我正在为我们公司构建一个应用程序。我们有一个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" />
感谢您的时间,
STEF。
答案 0 :(得分:1)
CSP错误为您提供了所有详细信息。你没有指定'frame-src'指令,因此它会回退到'default-src',它不会将gap:protocol列入白名单。
您有两种选择:
1)将gap:
添加到'default-src'。
2)添加'frame-src'指令并将gap:
添加到该指令。
如果你选择2,你可能还想添加'child-src'指令以便将来兼容与'frame-src'相同的值。