ServiceWorkerRegistration.update()

update()ServiceWorkerRegistration インターフェイスのメソッドで、サービスワーカーの更新を試みます。 ワーカーのスクリプト URL を読み取り、新しいワーカーが現在のワーカーとバイト単位で同一でない場合は、新しいワーカーをインストールします。 前回の読み取りが 24 時間以上前であった場合、ワーカーの読み取り時にブラウザーのキャッシュをバイパスします。

Note: この機能はウェブワーカーで利用できます。

構文

serviceWorkerRegistration.update();

引数

なし。

返値

ServiceWorkerRegistration オブジェクトで解決する Promise です。

次の簡単な例では、サービスワーカーの例を登録し、次にイベントハンドラーをボタンに追加して、必要に応じてサービスワーカーを明示的に更新できるようにします。

if ('serviceWorker' in navigator) {
  navigator.serviceWorker.register('/sw-test/sw.js', {scope: 'sw-test'}).then(function(registration) {
    // 登録しました
    console.log('登録に成功しました。');
    button.onclick = function() {
      registration.update();
    }
  }).catch(function(error) {
    // 登録に失敗しました
    console.log('登録に失敗しました:' + error);
  });
};

仕様書

Specification
Service Workers 1
# service-worker-registration-update

ブラウザーの互換性

BCD tables only load in the browser

関連情報