草庐IT

C++异常安全

全部标签

javascript - 为什么使用 '*' 作为 postMessage 的 targetOrigin 存在安全风险?

当对postMessage()方法的targetOrigin使用通配符时,我很难理解安全问题。您调用postMessage()的窗口是否已经有一个我们要将数据发送到的来源?怎么会有人能够干涉它?使用window.location.origin将targetOrigin设置为窗口的原点是否不好?我理解在接收端检查事件源的重要性(如图here所示),但我似乎无法理解为什么发送端使用通配符作为targetOrigin是不好的当窗口已经有一个特定的原点时。 最佳答案 这本身不是风险。这只是意味着任何人都可以将您的内容嵌入到框架中并阅读您通过

javascript - 为什么我的 React 组件渲染被调用两次,一次没有数据,然后又一次有数据,但是为时已晚的异常?

我有一个组件TreeNav,其数据来自api调用。我已经设置了reducer/action/promise和所有的管道,但是当我在数据上调用map()时在组件渲染中,得到“UncaughtTypeError:Cannotreadproperty'map'ofundefined”。故障排除显示TreeNavrender()被调用了两次。第二次是在数据从api返回之后。但是由于第一个render()错误,第二个render()永远不会运行。这是我的代码文件:--------reducers/index.js--------import{combineReducers}from'redux'

javascript - 使用异步/等待时在 Express 中捕获未处理的异常

看下面的TypeScript代码:app.get('/test_feature',function(req:Request,res:Response){thrownewError("Thisisthebug");});app.use(logErrors);functionlogErrors(err:Error,req:Request,res:Response,next:NextFunction){console.log(err);mongoDal.log(err.message,err);next(err);}在这里,我在请求处理程序中抛出一个错误,它会按预期触发logErrors函数

javascript - 是否可以在 vue-router 中锁定除一条以外的所有路由?安全吗?或者我应该使用另一种方法?

我想做一个在线考试,这个考试有5页,有一个倒计时计时器(120秒),每页有4个问题。120秒后,用户将自动转到下一页,或者他们可以在此之前单击下一步按钮。Laravel5.4和VueJs,用户回答的每个问题都有一个Ajax请求。我想要的是阻止用户看到其他页面。每个页面最多只能显示120秒。用户不应该能够点击后退按钮并查看之前的页面。这可能吗?我想用Vuejs和vue-router创建这个应用程序,但我不知道如何用vue-router实现它,我做了一些研究,但没有得到太多结果!或者也许我不应该使用vue-router,而是使用我自己的简单路由器,例如:$("#page1").show()

javascript - 如果元素不存在,则 jQuery 异常

我使用jQuery,如果我附加某个事件或尝试对不存在的元素(从选择器获取)执行某些操作,我需要随时随地获取异常(通过任何操作)。对于这个问题,jQuery中是否有一些内部“严格”模式? 最佳答案 不,没有。但是,您可以为它制作一个简单的插件:$.fn.checkEmpty=function(){if(!this.length)thrownewError("Noelementsmatchedby"+this.selector);returnthis;};$('...').checkEmpty().bind(...);或者:functi

javascript - 执行以下操作是否 100% 安全?

执行以下操作是否100%安全?varuntrusted_input_from_3rd_party='alert("xss")';document.getElementsByTagName('body')[0].appendChild(document.createTextNode(untrusted_input_from_3rd_party));考虑到第三方可以输入任何东西(HTML、CSS等),如果我通过createTextNode传递然后添加到主场? 最佳答案 这是防止XSS的好方法。通过createTextNode进行的DOM

javascript - javascript eval 真的有那么大的安全威胁吗?

这个问题在这里已经有了答案:WhyisusingtheJavaScriptevalfunctionabadidea?(25个答案)关闭9年前。假设没有可用于修改某人计算机的浏览器端安全漏洞,我不明白使用eval会如何导致任何真正的威胁。谁能解释一下这是怎么可能的。有人可以在用户的​​计算机上显示某些内容,但如果不进行重定向或接受下载,就不会造成真正的伤害。不会造成服务器端损坏,对吧?

javascript - 获取任何 JavaScript 值或对象的字符串表示的安全方法

我想在JavaScript中获取任何对象或值的字符串表示形式。我做了几个实验。>vara=document.createTextNode('foo');a"foo">vara=document.createTextNode('foo');a.toString()"[objectText]">vara=1;a.toString()"1">(1).toString()"1">1.toString()SyntaxError:UnexpectedtokenILLEGAL我有以下问题:为什么1.toString()会失败?以下函数是否会返回每个可能的JavaScript对象、值或文字的字符串表示

javascript - 了解 QUnit 异常测试

在编写QUnit测试时,我对“throws”的行为感到惊讶。关于下面的代码(http://jsfiddle.net/DuYAc/75/),谁能回答我的问题:functionsubfunc(){throw"subfuncerror";}functionfunc(){try{subfunc();}catch(e){}}test("officialcookbookexample",function(){throws(function(){throw"error";},"Mustthrowerrortopass.");});test("Wouldexpectthistowork",functi

javascript - chrome.runtime.sendMessage 在重新加载 Chrome 扩展程序后从内容脚本中抛出异常

我将消息从注入(inject)的内容脚本发送回我的Chrome扩展程序中的后台脚本:chrome.runtime.sendMessage({action:"myResult"});这工作正常,直到我重新加载我的扩展程序(通过转到“设置”->“扩展程序”->“为我的扩展程序重新加载(Ctrl+R)”。)反过来,当我的后台脚本启动时,它会为所有打开的标签反复调用chrome.tabs.executeScript,以编程方式重新注入(inject)我的内容脚本(asIshowedinthisquestion.)但是在我这样做之后,如果我从我的内容脚本调用第一行sendMessage,它会抛出