是什么让一个不安全的脚本“;“不安全”;
What makes an unsafe script "unsafe"?
我是chrome扩展的新手。我正在编写一个小插件,当用户按下按钮时,它会放大页面(非常新)。然而,除非我允许不安全的脚本,否则它不会运行,而且它不会转移到新页面,表面上是因为不安全的剧本。我所做的就是放大。
我真正想知道的是,如果不是询问信息或直接访问他们的计算机,是什么让脚本不安全?
有三件事使脚本对Google扩展不安全:
内联JavaScript
这是一个常见的初学者错误(我犯了)。您不能放置内联JavaScript语句。例如,您不能以这种方式处理事件:
<img src="myImage.jpg" onclick="doSomething()">
正确的方法是为DOM元素(在我的示例中是图像)定义一个Id,并在一个单独的JavaScript文件中设置事件处理程序:
page.html:
<img src="myImage.jpg" id="myImage">
<script src="script.js"></script>
script.js:
//In vanilla Javascript :
document.getElementById("myImage").onClick(doSomething);
//In JQuery
$("#myImage").on("click", doSomething);
Eval及相关功能
所有可以即时将String求值为JavaScript的函数都是不安全的。因此不允许使用eval
功能,例如new Function("return something.value");
远程脚本
只有本地脚本是安全的。例如,如果使用jQuery,则必须在扩展中包含库。通过CDN链接加载外部库被认为是不安全的。
这是一个快速的概述,你可以阅读更多关于这方面的信息,并对谷歌Chrome扩展的限制进行解释内容安全政策
另一件需要考虑的事情是如何获取文件。
例如,如果使用http://
获取文件源,但使用https://
访问网站,则会出现不安全的脚本错误。
相关文章:
- CORS保持在SecurityError上:操作不安全
- createObjectURL blob url在Firefox中不安全
- 地理定位API从Chrome 50中的不安全来源中删除
- 为什么流星会被认为是不安全的
- Javascript函数不工作.脚本定位问题
- SecurityError:操作在canvas.toDataURL中不安全
- Mootools:拒绝设置不安全的标头“;连接”;
- 为什么当我使用初始化触发器函数时,我总是找不到脚本函数:发送发票如果新
- Chrome for bookmarlet 中的“不安全内容”
- 为什么内联 JS 块不安全
- jQuery:Javascript抛出错误“;操作不安全”;设置值时
- AngularJS-ngBindHtml和'不安全'html
- HTML5历史API-操作不安全
- 刚将我的网站移到ssl,但我有不安全的内容
- 如何在不阻塞脚本的情况下运行脚本
- Chrome 用户脚本错误:“不安全的 JavaScript 尝试访问框架”
- 如何禁用不安全的脚本从执行chrome测试版支持CSP
- 如何在SSL页面上使用不安全的web脚本
- 是什么让一个不安全的脚本“;“不安全”;
- Heroku错误:页面是通过HTTPS加载的,但请求了一个不安全的脚本“角度路由.js”