原文及GitHub地址点我
下载
source:服务器的URL的下载文件的地址,可以被encodeURI编码;
target:文件系统URL代表设备上的文件地址,为了兼容性反馈,这个也可以是设备上文件的全路径;
successCallBack:一个通过的文件对象的反馈;
errorCallback:错误反馈,如果在检验文件对象时发生了错误,会执行一个反馈;引用一个FileTransferError对象;
trustAllHosts:对一个参数进行操作,默认是false,如果设置为true,其接受所有安全执照;因为安卓拒绝self-signed安全执照,所以这很有用;不推荐产品使用;支持Android和IOS;
options:操作性参数,目前仅仅支持headers(例如权限(基本的权限)等);
例子:
// !! Assumes variable fileURL contains a valid URL to a path on the device,
// for example, cdvfile://localhost/persistent/path/to/downloads/
var fileTransfer = new FileTransfer();
var uri = encodeURI("http://some.server.com/download.php");
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("download error code" + error.code);
},
false,
{
headers: {
"Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
}
}
);
WP8 Quirks WP8兼容
下载请求是被当地执行缓存的;为了避免缓存,通过if-Modified-Since头部下载方法;
Browser Quirks 浏览器兼容
withCredentials:是否告诉浏览器来在XMLHttpRequest上设置withCredentials标记;
abort
终止一个传输进程;如果通过FileTransferError对象,有一个FIleTransferError.ABORT_ERR代码,会有一个反馈;
例子:
// !! Assumes variable fileURL contains a valid URL to a text file on the device,
// for example, cdvfile://localhost/persistent/path/to/file.txt
var win = function(r) {
console.log("Should not be called.");
}
var fail = function(error) {
// error.code == FileTransferError.ABORT_ERR
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
}
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName="myphoto.jpg";
options.mimeType="image/jpeg";
var ft = new FileTransfer();
ft.upload(fileURL, encodeURI("http://some.server.com/upload.php"), win, fail, options);
ft.abort();