【问题标题】:Content-Security-Policy error https://ssl.gstatic.com内容安全策略错误 https://ssl.gstatic.com
【发布时间】:2015-09-17 21:45:22
【问题描述】:

我收到如下截图所示的错误:

上面写着:

拒绝将字符串评估为 JavaScript,因为“unsafe-eval”不是以下内容安全策略指令中允许的脚本源:“default-src 文件:数据:chrome-extension:https://ssl.gstatic.com”。请注意,'script-src' 没有显式设置,因此 'default-src' 用作后备。

我做错了什么以及如何解决 Content-Security-Policy 错误?

下面是我的 index.html 中的元标记:

<meta http-equiv="Content-Security-Policy" 
    content="default-src * 'self' 'unsafe-eval' 'unsafe-inline' 
    data: ssl.gstatic.com https://ssl.gstatic.com; 
    style-src * 'self' 'unsafe-inline' 
    chrome-extension: ssl.gstatic.com; 
    script-src * 'unsafe-inline' 'unsafe-eval' 'self' 
    chrome-extension: file: data: http: https: ssl.gstatic.com
 https://ssl.gstatic.com">

我正在使用带有 Onsen UI 的 CCA。

【问题讨论】:

  • 您使用的是哪个平台?可湿性粉剂?你试过使用ng-csp吗?
  • Android平台,如何使用ngCsp?

标签: cordova google-chrome-app onsen-ui content-security-policy


【解决方案1】:

您的问题被标记为 Google Chrome 应用问题。

Chrome 应用是subject to a very specific CSP 不能覆盖它

default-src 'self';
connect-src *;
style-src 'self' data: chrome-extension-resource: 'unsafe-inline';
img-src 'self' data: chrome-extension-resource:;
frame-src 'self' data: chrome-extension-resource:;
font-src 'self' data: chrome-extension-resource:;
media-src *;

您的 Chrome 应用只能引用应用内的脚本和对象,媒体文件除外(应用可以引用包外的视频和音频)。 Chrome 扩展将让您放宽默认的内容安全策略; Chrome 应用不会。

然后文档继续有一个有用的"How do I.." section。看看它,看看有什么适合您的需求。

【讨论】:

  • 我改了还是不行。这很奇怪,因为在浏览器中测试,它可以工作!但是当它内置到设备中时,没有!
  • 我说我把我的换成了你订购的。完全一样。明白了吗?
  • 好的,您需要仔细阅读文档。您无法更改它,Chrome 应用程序中始终如此。这可能意味着您无法使用您正在使用的库,除非您将其沙箱化。
  • 我不能在外面使用任何东西?例如,谷歌地图库?
  • 不,通常不会。您可以使用 &lt;webview&gt; 嵌入 Web 内容,并且可以将沙盒用于某些任务。您当然可以只使用 XHR 获取数据,但不能在外部脚本运行。 阅读我链接的文档!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 1970-01-01
  • 2021-12-13
  • 1970-01-01
  • 1970-01-01
  • 2021-10-13
相关资源
最近更新 更多