因此,我将 Cordova 与 Windows Azure 存储结合使用,并使用 Cordova 中的文件传输和文件插件从 Azure 下载具有公共(public)访问权限的文件。我收到错误代码 1 (FileTransferError.FILE_NOT_FOUND_ERR)。我很确定我的 URL 是正确的,所以我想知道是否是因为我没有在 header 中添加身份验证...但既然它是公共(public)文件,我真的需要身份验证吗?
这是我的 Cordova 代码,如果有帮助的话:
var fileTransfer = new FileTransfer();
var uri = encodeURI("https://MY_ACCOUNT.blob.core.windows.net/MY_CONTAINER/test2.txt");
var fileURL = cordova.file.dataDirectory;
fileTransfer.download(
uri,
fileURL,
function(entry) {
alert('entry');
alert("download complete: " + entry.toURL());
},
function(error) {
alert("error code" + error.code);
},
false
);
最佳答案
对于那些可能遇到与我相同问题的人来说,这是 fileURL 路径不完整。在 fileURL 的末尾,您添加了文件名,所以我的文件名是:
var fileURL = cordova.file.dataDirectory+"test2.txt";
关于具有 Windows Azure 存储的 Cordova,如果对我的容器的访问是公开的,我还需要身份验证吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30711795/