Content-Security-Policy breaking console.log 输出
Content-Security-Policy breaking console.log output
在第 5 版的 cordova 上开发应用程序(使用 phonegap 框架)。最新更新要求您根据其文档使用 Content-Security-Policy 元标记:https://github.com/apache/cordova-plugin-whitelist
这是我的应用程序标签:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.example.com">
当我包含这个时,一切正常,除了 console.log 消息不会在 运行 "phonegap serve" 时被推送到终端(一个工具提供给 'test' 你的应用程序使用您的设备上预装了应用程序)。
但是,如果我从我的代码中删除标签,那么 console.log 消息会正确推送到终端,但我无法再向我的 example.com 域发出数据请求。
我以 http://content-security-policy.com/ 为指导尝试了很多变化,但我无法使其正常工作。
注意:这是 cordova v5 中的一个新工具,因为以前这一切都没有问题。
这是我在 Content-Security-Policy
中的设置示例。我在生产中没有 *
,但后来我用所有接受的位置替换了 *
。
我还需要为 IOS 平台添加 gap://ready
。不太清楚为什么需要这样做,但是当我在 IOS 上调试时,我看到它在 gap://ready
.
上抛出了一个错误
<meta http-equiv="Content-Security-Policy" content="default-src 'self' * gap://ready; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *">
在上面一行中,我的 console.log()
消息确实出现了。
在第 5 版的 cordova 上开发应用程序(使用 phonegap 框架)。最新更新要求您根据其文档使用 Content-Security-Policy 元标记:https://github.com/apache/cordova-plugin-whitelist
这是我的应用程序标签:
<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' *.example.com">
当我包含这个时,一切正常,除了 console.log 消息不会在 运行 "phonegap serve" 时被推送到终端(一个工具提供给 'test' 你的应用程序使用您的设备上预装了应用程序)。
但是,如果我从我的代码中删除标签,那么 console.log 消息会正确推送到终端,但我无法再向我的 example.com 域发出数据请求。
我以 http://content-security-policy.com/ 为指导尝试了很多变化,但我无法使其正常工作。
注意:这是 cordova v5 中的一个新工具,因为以前这一切都没有问题。
这是我在 Content-Security-Policy
中的设置示例。我在生产中没有 *
,但后来我用所有接受的位置替换了 *
。
我还需要为 IOS 平台添加 gap://ready
。不太清楚为什么需要这样做,但是当我在 IOS 上调试时,我看到它在 gap://ready
.
<meta http-equiv="Content-Security-Policy" content="default-src 'self' * gap://ready; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *">
在上面一行中,我的 console.log()
消息确实出现了。