>假设移动设备上的连接很弱并且卡住了,如何在加载微调器在屏幕上挖洞之前中断正在进行的文件传输?
文档在这里 https://github.com/apache/cordova-plugin-file-transfer/blob/master/doc/index.md#abort
根据文档,使用 abort() 方法应该可以做到这一点,但看起来没有办法。iOS和Android。下载功能有效。但是,中止不会执行任何操作。无论如何,该文件是在 abort() 调用后下载的。即使在 10 秒后。
我有:
function downloadMyFilePlease () {
var fileTransfer = new FileTransfer();
var uri = encodeURI("http://some.server.com/download.php");
fileTransfer.onprogress = function(progressEvent) {
//...
};
fileTransfer.download(
uri,
fileURL,
function(entry) {
console.log("download complete: " + entry.toURL());
},
function(error) {
console.log("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code" + error.code);
},
false,
{
headers: {
"Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
}
}
);
}
function abortFileTrasfer () { // called on Abort button click
fileTransfer.abort(); // <------ Why are you not working???
}
我错过了什么?
变量 fileTransfer 没有在函数内部定义abortFileTrasfer()
它是 downloadMyFilePlease()
中的局部变量,因此您无法在 abortFileTrasfer()
中访问它。