downloads.DownloadItem

DownloadItem 类型是 downloads API 的一部分,它表示一个已下载的文件。

类型

此类型的值是对象。它们包含以下属性:

byExtensionId 可选

一个 string,表示触发下载的扩展程序的 ID(如果下载是由扩展程序触发的)。此值一旦设置就不会改变。如果下载不是由扩展程序触发的,则为 undefined

byExtensionName 可选

一个 string,表示触发下载的扩展程序的名称(如果下载是由扩展程序触发的)。如果扩展程序更改了其名称或用户更改了其区域设置,此值可能会发生变化。如果下载不是由扩展程序触发的,则为 undefined

bytesReceived

一个 number,表示在下载过程中迄今为止从主机接收到的字节数;这不考虑文件压缩。

canResume

一个 boolean,指示当前中断(例如,暂停)的下载是否可以从中断点恢复(true),或不能(false)。

cookieStoreId 可选

下载发生的 上下文身份 的 cookie 存储 ID。有关更多信息,请参阅 上下文身份的使用

danger

一个字符串,指示下载是安全还是已知可疑。其可能值定义在 downloads.DangerType 类型中。

endTime 可选

一个 string(采用 ISO 8601 格式),表示自 UNIX 纪元以来到此下载结束的毫秒数。如果下载尚未完成,则此值为 undefined

error 可选

一个字符串,指示下载中断的原因。可能值定义在 downloads.InterruptReason 类型中。如果未发生错误,则此值为 undefined

estimatedEndTime 可选

一个 string(采用 ISO 8601 格式),表示自 UNIX 纪元以来到此下载预计完成时间的毫秒数。如果未知,则此值为 undefined(特别是在传递到 downloads.onCreatedDownloadItem 中,此值为 undefined)。

exists

一个 boolean,指示下载的文件是否仍然存在(true)或不存在(false)。此信息可能过时,因为浏览器不会自动监视文件删除 — 要检查文件是否存在,请调用 downloads.search() 方法,并按文件进行过滤。

文件名

一个 string,表示文件的绝对本地路径。

fileSize

一个 number,表示解压缩后整个文件中的总字节数。值为 -1 表示文件总大小未知。

id

一个 integer,表示下载文件的唯一标识符,该标识符在浏览器会话之间是持久的。

incognito

一个 boolean,指示下载是否记录在浏览器的历史记录中(false),或未记录(true)。

mime

一个 string,表示下载文件的 MIME 类型。

paused

一个 boolean,指示下载是否已暂停,即下载是否已停止从主机读取数据但已保持连接打开。如果是,则值为 true;如果不是,则值为 false

referrer

一个 string,表示下载文件的引荐来源地址。

startTime

一个 string(采用 ISO 8601 格式),表示自 UNIX 纪元以来到此下载开始的毫秒数。

state

一个 string,指示下载是正在进行、已中断还是已完成。可能值定义在 downloads.State 类型中。

totalBytes

一个 number,表示正在下载的文件中的总字节数。这不考虑文件压缩。值为 -1 表示总字节数未知。

url

一个 string,表示文件下载的绝对 URL。

浏览器兼容性

注意: 此 API 基于 Chromium 的 chrome.downloads API。