web-dev-qa-db-ja.com

ナビゲーターでserviceWorkerが見つかりません

googleの新しいアップデート以降Chrome(バージョン69.0.3497.92(公式ビルド)(64ビット))ナビゲーターでserviceWorkerサービスが見つかりません。実際にサービスを登録できましたワーカーは次のとおりですが、ナビゲーターでserviceWorkerが見つからないというエラーが発生します。

if('serviceWorker' in navigator) {
    /*
    *
    * Register the Service Worker
    *
    * */
    navigator.serviceWorker.register('sw.js').then(function(registration) {
        console.log('Service Worker Registered');
    });

} else console.log('Your browser does not support the Service-Worker!');

Service Workerを再び使用するにはどうすればよいですか、またはすべてのChromeバージョンで再実行するにはどうすればよいですか?

34

HTTPS経由でページを提供するか、localhostを使用します。サービスワーカー 必須 a セキュアコンテキスト

MDNページChromiumページ )。

window.isSecureContextの値は、[SecureContext]機能を表示するか非表示にするかを示します。 (これはfile:// URLのtrueであり、serviceWorker APIは表示されますが、もちろん機能しません。)

62
Josh Lee

Localhost以外のドメインでローカルに仮想ホストを使用している場合は、chromeにカスタムドメインを「セキュア」として扱うように指示できます。

アドレスバー:chrome://flags/#unsafely-treat-insecure-Origin-as-secure

次に、http://my-local-dev-domain.testのようなドメインを追加します

有効をクリックし、再起動ボタンをクリックします。

49
Sean256