ios - 为什么我的 IOS 应用程序拒绝 cdvfile ://and file:///links?

标签 ios angularjs cordova filesystems cordova-plugin-file

我在 angular/ionic/cordova 应用程序中显示下载到 cordova.file.dataDirectory 的图像时遇到问题。

我正在使用 cordova-plugin-file,我能够下载文件,并使用 .toInternalURL() 和/或 .toURL() 提取 URL。然而, Angular ListView 拒绝了它们。我在 Ios 上使用 WkWebView,我的代码在 Android 上运行良好(使用 .toInternalURL() )。我已经在配置和元内容安全策略中将 cdvfile://* 和 file:///* 列入白名单...

我添加了截图 这是 .toInternalURL() 生成的链接的控制台屏幕截图

这是 .toURL() 生成的链接的屏幕截图:

这是我使用的安全策略:

<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/

相关文章:

ipad - 从 Ipad phonegap 应用程序在外部浏览器中打开网页

javascript - ionic 点击推送通知不重定向ios10

iphone - 应用拒绝 22.1

ios - NSPredicate 和 BeginsWith

javascript - 如何在Nodejs应用程序中使用session

javascript - Jasmine angularjs - 监视 Controller 初始化时调用的方法

javascript - 如何在加载之前将参数传递给 javascript 文件 url?

javascript - 通过 onclick 事件设置变量

ios - 如何检查父SCNNode是否包含子SCNNode

ios - 当用户开始在 UISearchBar 中输入时应用程序崩溃