我在 angular/ionic/cordova 应用程序中显示下载到 cordova.file.dataDirectory 的图像时遇到问题。
我正在使用 cordova-plugin-file,我能够下载文件,并使用 .toInternalURL() 和/或 .toURL() 提取 URL。然而, Angular ListView 拒绝了它们。我在 Ios 上使用 WkWebView,我的代码在 Android 上运行良好(使用 .toInternalURL() )。我已经在配置和元内容安全策略中将 cdvfile://* 和 file:///* 列入白名单...
我添加了截图 这是 .toInternalURL() 生成的链接的控制台屏幕截图
这是我使用的安全策略:
<meta http-equiv="Content-Security-Policy" content="default-src * data: cdvfile://* content://* file:///*; style-src 'self' 'unsafe-inline' *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; media-src *">
最佳答案
好的,事实证明我的问题是 WKWEBVIEW。我一直在使用它,但没有意识到这是我的问题的根源。
所以要在 src 属性中使用存储的图像路径,不要使用 cdvfile://或 file:///。而是创建一个如下所示的路径:
http://localhost:12344/Library/NoCloud/ho_tylw7Ygc.jpg
将“http://localhost:12344/Library/NoCloud”添加到 entry.fullPath,您就可以指向应用的数据目录了。
关于ios - 为什么我的 IOS 应用程序拒绝 cdvfile ://and file:///links?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32546965/