browser.downloads


本文作者: jsweibo

本文链接: https://jsweibo.github.io/2019/03/01/browser-downloads/

摘要

本文主要讲述了:

  1. 许可配置
  2. 方法
  3. 事件

正文

许可配置

  • downloads

方法

download()

下载文件

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
browser.downloads
.download({
url: 'http://127.0.0.1:3000/test.txt',
filename: 'result.txt',
saveAs: true,
})
.then(function (id) {
// 成功开始下载时,浏览器会自动创建一个downloads.DownloadItem实例
// id为实例的id
console.log(id);
})
.catch(function (error) {
console.log(error);
});

事件

onChanged

downloads.DownloadItem实例的属性值发生变更时触发

示例:

1
2
3
4
5
6
7
8
9
10
11
12
function callback(downloadDelta) {
console.log(downloadDelta);
if (downloadDelta.state) {
if (downloadDelta.state.current === 'complete') {
console.log('download complete');
} else if (downloadDelta.state.current === 'interrupted') {
console.log('download interrupted');
}
}
}

browser.downloads.onChanged.addListener(callback);

如果下载链接是用URL.createObjectURL()生成的,那么应该在browser.downloads.onChanged的回调函数中调用URL.revokeObjectURL()销毁它

参考资料

本文作者: jsweibo

本文链接: https://jsweibo.github.io/2019/03/01/browser-downloads/


本文对你有帮助?请支持我


支付宝
微信