BackgroundFetchManager

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

BackgroundFetchManagerバックグラウンドフェッチ API のインターフェイスで、バックグラウンドフェッチ ID をキー、BackgroundFetchRegistration オブジェクトを値とする対応表です。

プロパティ

なし。

メソッド

fetch() Experimental

引数に与えられた配列( URL や Request オブジェクトで構成される) に対して、BackgroundFetchRegistration オブジェクトで解決される Promise を返します。

get() Experimental

引数に与えられた id に紐づく BackgroundFetchRegistration で解決される Promise を返します。 id が見つからない場合は undefined を返します。

getIds() Experimental

登録済みのすべてのバックグラウンドフェッチの ID を返します。

下記の例は、 ServiceWorkerRegistration オブジェクトから BackgroundFetchManager のインスタンスを取得し、バックグラウンドでオーディオファイルをダウンロードするために fetch() メソッドを呼び出しています。

js
navigator.serviceWorker.ready.then(async (swReg) => {
  const bgFetch = await swReg.backgroundFetch.fetch(
    "my-fetch",
    ["/ep-5.mp3", "ep-5-artwork.jpg"],
    {
      title: "Episode 5: Interesting things.",
      icons: [
        {
          sizes: "300x300",
          src: "/ep-5-icon.png",
          type: "image/png",
        },
      ],
      downloadTotal: 60 * 1024 * 1024,
    },
  );
});

仕様書

Specification
Background Fetch
# background-fetch-manager

ブラウザーの互換性

BCD tables only load in the browser