我正在使用Ionic为Android构建应用程序,当从设备进行测试时,我使用org.apache.cordova.file-transfer
插件进行的调用始终会产生相同的响应。
以下是用于启动下载的代码:
$scope.getFile = function(){
var filePath = cordova.file.dataDirectory + "beer.json";
var uri = encodeURI('https://stormy-sierra-8448.herokuapp.com/api/?q=stones+pale+ale');
var options = {};
$cordovaFileTransfer.download(uri, filePath, options, true)
.then(function(result) {
$scope.status = result;
alert('success');
}, function(err) {
console.log(err);
}, function (progress) {
$timeout(function () {
$scope.downloadProgress = (progress.loaded / progress.total) * 100;
})
});
}
然后是响应(来自控制台)
FileTransferError {
code: 3,
source: "https://stormy-sierra-8448.herokuapp.com/api/?q=stones+pale+ale",
target: "documents/beer.txt",
http_status: 401,
body: null…
}
body: nullcode: 3exception: nullhttp_status: 401source: "https://stormy-sierra-8448.herokuapp.com/api/?q=stones+pale+ale"
target: "documents/beer.txt"
__proto__: FileTransferError
我的环境如下: 科尔多瓦v5.0.0 离子1.3.20
我已经看到其他人发布降级插件使其工作,但当我低于我正在使用的当前版本(0.5)时,该应用程序无法构建。当我使用最新版本(1.0)时,应用程序会构建,但在启动后,控制台会说:
Uncaught module cordova-plugin-file.ProgressEvent not found - cordova.js:59
设备已连接并已通过“设备”插件进行验证。
请帮忙!