如何解决从 Cordova iOS 应用程序的网站下载文件
我有一个 Cordova 应用程序,它从网站下载图像文件并保存到本地缓存。这适用于 Android,但不适用于 iOS。我在 iOS 6.1.1 上使用 Cordova 10.0.0
var xhr = new XMLHttpRequest();
xhr.open("GET",'https://www.mywbsite.com/image.jpg',true);
xhr.responseType = "blob";
xhr.onreadystatechange = function () {
console.log(xhr.readyState);
}
xhr.onload = function() {
var blob = xhr.response;
window.resolveLocalFileSystemURL(cordova.file.cacheDirectory,function (directoryEntry) {
directoryEntry.getFile('downloadedFile.jpg',{ create: true },function (fileEntry) {
fileEntry.createWriter(function (fileWriter) {
fileWriter.onwriteend = function (result) {
console.log("Success");
};
fileWriter.onerror = function (e) {
console.log("failed");
};
fileWriter.write(blob);
},function(e) {
console.log("failed");
});
},function(e) {
console.log("failed");
});
},function(e) {
console.log("failed");
});
}
xhr.onerror = function(e) {
console.log("failed "+xhr.status);
}
xhr.send();
readyState 变为 4,状态为 0。我怀疑这与 WKWebView 有关,但我不确定如何解决此问题。远程站点没有运行脚本,只是我想下载的直接图像。
谢谢! 乔恩
解决方法
我找到了问题的答案。安装插件 cordova-plugin-wkwebview-file-xhr 允许 WKWebview 建立连接并下载文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。