downloads - 下载操作
Chrome Extension 提供了一组 API 用于管理浏览器的下载功能,包括暂停,搜索,取消等,downloads
API 从 Chrome 31 开始被支持,完整的文档信息可以访问官方Document: https://developer.chrome.com/extensions/downloads 。
配置
在 manifest.json
文件中配置 downloads
的权限声明,如:
开发
当我们想要创建一个下载时,我们可以使用 downloads
中的 download
方法来实现,这个方法包含两个参数,参数一:关于下载的信息,比如 url 等,参数二:创建成功之后的一个回调。
关于下载URL,如果你的URL使用的HTTPS协议,那么该请求将包含当前为其主机设置的 Cookie。如果同时指定了 filename 和 saveAs,则将显示另存为对话框,并使用指定的文件名进行预填充。如果下载成功,回调函数可以获取到downloadId。如果下载失败,回调函数获取的downloadId则为undefined,并且chrome.runtime.lastError将包含一些错误信息,提供给开发者使用。
其中 options
结构如下:
关于 conflictAction
的取值,只能有三个:
uniquify
To avoid duplication, the filename is changed to include a counter before the filename extension.overwrite
The existing file will be overwritten with the new file.prompt
The user will be prompted with a file chooser dialog.
现在让我们看一个例子,从 魔兽世界
官网下载一张图片:
如图:
在下载的过程中,我们还可以 暂停
,取消
等:
除了下载功能之外,我们还可以使用别的 API
,如图:
So,完整 demo 请查看 https://github.com/welearnmore/chrome-extension-demos/blob/master/downloads
Last updated