downloads

允許擴充套件與瀏覽器下載管理器進行互動。您可以使用此 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 和一個包含已更改屬性的物件。

擴充套件程式示例

瀏覽器相容性

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