2

我正在为我们公司构建一个应用程序。我们有一个 iframe(不要问为什么......)加载一个响应式网站。它(应该)对用户透明。

我添加了几行 js 来管理离线页面。

它在 android 模拟器(带有 Visual Studio 的 cordova)和 android 设备上运行良好。但是我面临一个content-security-policy我怀疑是这个错误的来源:

5 秒后 deviceready 未触发

根据我的阅读,它可能来自内容安全策略。

我在运行时收到此错误:

拒绝加载框架“gap://ready”,因为它违反了以下内容安全策略指令:“default-src 'self' https://www.mywebsite.fr http://www.mywebsite.fr ”。请注意,'frame-src' 没有明确设置,所以 'default-src' 用作后备。

您如何看待这个元数据:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' https://www.mywebsite.fr http:///www.mywebsite.fr; child-src 'self' https:///www.mywebsite.fr http:///www.mywebsite.fr; script-src 'self' https:///www.mywebsite.fr http:///www.mywebsite.fr; 
         gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">

还有我的 config.xml:

  <access origin="https:///www.mywebsite.fr" />
<access origin="http:///www.mywebsite.fr" />

谢谢你的时间,

斯蒂夫。

4

1 回答 1

1

CSP 错误为您提供了所有详细信息。您没有指定“frame-src”指令,因此它会退回到“default-src”,它不会将空白列入白名单:协议。

你有两个选择:

1)添加gap:到你的'default-src'。

2)添加一个'frame-src'指令并添加gap:到它。

如果您选择 2,您可能还需要添加“child-src”指令,以便将来与“frame-src”具有相同的值。

于 2016-08-03T14:33:13.793 回答