下载
使扩展能够与浏览器的下载管理器交互。您可以使用此 API 模块下载文件、取消、暂停、恢复下载,并在文件管理器中显示已下载的文件。
要使用此 API,您需要在 manifest.json 文件中指定 "downloads" API 权限。
类型
downloads.FilenameConflictAction
-
定义了在下载文件名称与现有文件冲突时该怎么办的选项。
downloads.InterruptReason
-
定义了一组可能的下载中断原因。
downloads.DangerType
-
定义了一组与可下载文件相关的潜在危险的常见警告。
downloads.State
-
定义了当前下载可以处于的不同状态。
downloads.DownloadItem
-
表示已下载的文件。
downloads.StringDelta
-
表示两个字符串之间的差异。
downloads.DoubleDelta
-
表示两个双精度浮点数之间的差异。
downloads.BooleanDelta
-
表示两个布尔值之间的差异。
downloads.DownloadTime
-
表示下载完成所需的时间。
downloads.DownloadQuery
-
定义了一组参数,可用于在下载管理器中搜索特定的一组下载。
函数
downloads.download()
-
下载文件,提供其 URL 和其他可选偏好设置。
downloads.search()
-
查询浏览器下载管理器中可用的
DownloadItems
,并返回与指定搜索条件匹配的那些下载。 downloads.pause()
-
暂停下载。
downloads.resume()
-
恢复已暂停的下载。
downloads.cancel()
-
取消下载。
downloads.getFileIcon()
-
检索指定下载的图标。
downloads.open()
-
使用其关联的应用程序打开已下载的文件。
downloads.show()
-
打开平台的文件管理器应用程序,以显示已下载文件所在的文件夹。
downloads.showDefaultFolder()
-
打开平台的文件管理器应用程序,以显示默认下载文件夹。
downloads.erase()
-
从浏览器下载历史记录中删除匹配的
DownloadItems
,但不从磁盘删除已下载的文件。 downloads.removeFile()
-
从磁盘删除已下载的文件,但不从浏览器的下载历史记录中删除。
downloads.acceptDanger()
-
提示用户接受或取消危险的下载。
downloads.setShelfEnabled()
-
启用或禁用与当前浏览器配置文件关联的每个窗口底部的灰色搁板。只要至少有一个扩展禁用了搁板,搁板就会被禁用。
事件
downloads.onCreated
-
下载开始时,将与
DownloadItem
对象一起触发。 downloads.onErased
-
从历史记录中删除下载时,将与
downloadId
一起触发。 downloads.onChanged
-
当
DownloadItem
的任何属性(除bytesReceived
外)发生更改时,此事件将与downloadId
和包含已更改属性的对象一起触发。
浏览器兼容性
BCD 表仅在启用了 JavaScript 的浏览器中加载。
示例扩展
注意:此 API 基于 Chromium 的 chrome.downloads
API。