Firefox OS模拟器 - 调用由CSP阻止的Function()

时间:2015-12-04 18:19:02

标签: javascript cordova firefox-os

我在Firefox OS v2.2上运行Firefox 42.0模拟器。 我的应用程序几个月前运行正常,但现在我收到此错误,它引用handlebars.js

它说:Content Security Policy: The page's settings blocked the loading of a resource at self ("script-src app://50d74c3c-64ca-402e-9d0a-47f0cb9f378c"). handlebars-v4.0.5.js:3562:0,邮件为call to Function() blocked by CSP

我使用cordova 5.4.1require-jshandlebars 4.0.5和其他js插件。

它可能与我的Firefox主浏览器有关吗?我的意思是,如果我修改about:config菜单并将security.csp.enable更改为false可能有帮助吗?

对此问题的任何建议?

由于

修改

这是我index.html的第一行:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="format-detection" content="telephone=no" />
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, target-densitydpi=device-dpi" />

所以我Content-Security-Policy中没有index.html标记。

1 个答案:

答案 0 :(得分:0)

如果您的应用类型具有特权,则会强制执行CSP。检查应用清单中的应用类型,如果不需要使用特殊权限,请确保它没有特权。否则,如果您需要特权应用程序,则必须在代码中以及您使用的库中消除CSP违规。我在使用CSP时遇到了困难,因为在我的应用程序中,由于摄像头访问(MozCameras),我想使用特殊权限。我根本无法让我的应用程序使用require.js,所以我摆脱它,现在一切正常。