WKWebview [警告] [阻止] https://www.myurl.com 的页面不允许显示来自 mycustomscheme://?path=somepath 的不安全内容

Tak*_*ako 5 ios content-security-policy wkwebview

我最近在我的混合应用程序中将 my替换UIWebview为 a WKWebview。我正在使用自定义方案从应用程序的本机部分加载图像,因为它是 Apple 在此处推荐的:https : //developer.apple.com/videos/play/wwdc2017/220/

我正在从一个看起来像的 url 加载图像 mycustomscheme://?path=somepath

我添加了 Content-Security-Policy 标头以允许混合内容,它看起来像这样(删除了不相关的部分):

Content-Security-Policy: default-src 'self' www.myurl.com ; img-src 'self' mycustomscheme: ; script-src 'self' 'unsafe-inline' 'unsafe-eval' ; report-uri https://www.myreporturl.com/
Run Code Online (Sandbox Code Playgroud)

这适用于大多数设备,并允许请求mycustomscheme通过,并报告myreporturl是否有任何内容被阻止。但是,在某些设备上,自定义请求因此错误[Warning] [blocked] The page at https://www.myurl.com was not allowed to display insecure content from mycustomscheme://?path=somepath而被阻止: 并且没有向 发送报告myreporturl,就好像根本没有加载标头一样。

我已经确认标头实际上已发送,并且有问题的设备正在运行最新的 iOS (12.1.4)。

任何关于如何防止我的自定义请求被阻止的建议将不胜感激!

Bra*_*dia 2

请尝试以下加载图像策略:

img-src 'self' 'unsafe-inline' 'unsafe-eval' data: http: https: mycustomscheme: filesystem: file:;
Run Code Online (Sandbox Code Playgroud)