downloads

拡張機能にブラウザーのダウンロードマネージャーとのやりとりを可能にします。このAPI モジュールを、ファイルマネージャーでのファイルのダウンロード、キャンセル、停止、ダウンロードの再開、ダウンロード済みのファイルの表示に使用できます。

このAPIを使うには manifest.json ファイルで指定する "downloads" API パーミッションが必要です。

downloads.FilenameConflictAction
ダウンロードされたファイル名が既存ファイルと衝突する場合の動作オプション定義
downloads.InterruptReason
ダウンロードが中断された理由の集合を定義
downloads.DangerType
ダウンロード可能なファイルに関連した想定される危険性への警告の集合を定義
downloads.State
現在のダウンロードが取りうるさまざまな状態を定義
downloads.DownloadItem
ダウンロード済みのファイルを表現する
downloads.StringDelta
2つの文字列の差異を表現する
downloads.DoubleDelta
2つの倍精度実数の差異を表現する
downloads.BooleanDelta
2つの真偽値の差異を表現する
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.drag()
ダウンロード済みのファイルを他のアプリケーションにドラッグし始めます
downloads.setShelfEnabled()
現在のブラウザープロファイルに関連するすぺてのウィンドウの下のグレーの棚を有効化/無効化します。この棚は少なくとも1つの拡張機能が無効化すると無効になります。

イベント

downloads.onCreated
ダウンロード開始時に DownloadItem オブジェクトと共に発火します
downloads.onErased
ダウンロードが履歴から消去された時に downloadId と共に発火します
downloads.onChanged
bytesReceived を除くいかなる DownloadItem のプロパティが変わった時、このイベントは downloadId や変更したプロパティを含むオブジェクトと共に発火します

ブラウザ実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxOperaSafariAndroid 版 Firefox
BooleanDeltaChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
DangerTypeChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
DoubleDeltaChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
DownloadQueryChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
DownloadTimeChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
FilenameConflictActionChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
InterruptReasonChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
StateChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
StringDeltaChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
acceptDangerChrome 完全対応 ありEdge 完全対応 79Firefox 未対応 なしOpera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 なし
cancelChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
downloadChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
dragChrome 完全対応 ありEdge 完全対応 79Firefox 未対応 なしOpera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 なし
eraseChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
getFileIconChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 なし
onChangedChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
onCreatedChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
onErasedChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
openChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
pauseChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
removeFileChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
resumeChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
searchChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 47Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
setShelfEnabledChrome 完全対応 ありEdge 完全対応 79Firefox 未対応 なしOpera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 なし
showChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79
showDefaultFolderChrome 完全対応 ありEdge 完全対応 79Firefox 完全対応 48Opera 完全対応 ありSafari 未対応 なしFirefox Android 未対応 48 — 79

凡例

完全対応  
完全対応
未対応  
未対応

Example extensions

謝辞

この API は Chromium の chrome.downloads API に基づいています。

Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。