我的应用程序需要在打包的应用程序中执行GoogleMap API的外部URL。当我在模拟器上执行代码时,我在安全选项卡
中收到以下错误“内容安全策略:页面设置阻止了https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true&callback=initialize(”script-src app:// 58b444ed-2bd9-4ce2-8687-09694b09d6ae“)加载资源。”
请提供解决方案来处理此问题
此致 Rashmi
答案 0 :(得分:0)
您可能会收到CPS错误的原因很少。有关更多信息,请参阅此URL。 https://developer.mozilla.org/en-US/Apps/Build/Building_apps_for_Firefox_OS/CSP
默认情况下,仅对特权和认证的应用程序强制执行CSP。如果您有一个简单的打包应用程序,则不应该有CSP问题。如果您没有提及应用类型的任何内容,则不应该有问题。
特权应用的CSP是:
"default-src *;
script-src 'self';
object-src 'none';
style-src 'self' 'unsafe-inline'"
对于认证:
"default-src *;
script-src 'self';
object-src 'none';
style-src 'self'"
这意味着您不能拥有指向远程服务器以外的脚本。如果您的打包应用程序正在加载外部URL,您可以通过服务器代理google js。由于script-src将匹配default-src,它应该可以工作。
否则,您可以将脚本直接保存在项目中。这可能不推荐,但也可以。
如果使用eval
和new Function
,Google提供的脚本也可能无法正常运行。