クラス: ServiceWorkers
クラス: ServiceWorkers
セッションのアクティブなサービスワーカーからイベントをクエリおよび受信します。
プロセス: メイン
このクラスは、`'electron'`モジュールからはエクスポートされません。Electron APIの他のメソッドの戻り値としてのみ使用できます。
ServiceWorkersクラスのインスタンスには、SessionのserviceWorkersプロパティを使用してアクセスします。
例:
const { session } = require('electron')
// Get all service workers.
console.log(session.defaultSession.serviceWorkers.getAllRunning())
// Handle logs and get service worker info
session.defaultSession.serviceWorkers.on('console-message', (event, messageDetails) => {
  console.log(
    'Got service worker message',
    messageDetails,
    'from',
    session.defaultSession.serviceWorkers.getFromVersionID(messageDetails.versionId)
  )
})
インスタンスイベント
以下のイベントは、ServiceWorkersのインスタンスで使用できます。
イベント: 'console-message'
戻り値
- eventイベント
- messageDetailsオブジェクト - コンソールメッセージに関する情報- message文字列 - 実際のコンソールメッセージ
- versionId数値 - ログメッセージを送信したサービスワーカーのバージョンID
- source文字列 - このメッセージのソースの種類。`javascript`、`xml`、`network`、`console-api`、`storage`、`rendering`、`security`、`deprecation`、`worker`、`violation`、`intervention`、`recommendation`、または`other`のいずれかです。
- level数値 - ログレベル(0~3)。順に`verbose`、`info`、`warning`、`error`に対応します。
- sourceUrl文字列 - メッセージの発信元URL
- lineNumber数値 - このコンソールメッセージをトリガーしたソースの行番号
 
サービスワーカーがコンソールに何かをログ出力したときに発生します。
イベント: 'registration-completed'
戻り値
- eventイベント
- detailsオブジェクト - 登録されたサービスワーカーに関する情報- scope文字列 - サービスワーカーが登録されている基本URL
 
navigator.serviceWorker.register('/sw.js')が正常に解決された後、またはChrome拡張機能が読み込まれたときに発生します。
インスタンスメソッド
以下のメソッドは、ServiceWorkersのインスタンスで使用できます。
serviceWorkers.getAllRunning()
戻り値 Record<number, ServiceWorkerInfo> - キーがサービスワーカーのバージョンID、値がそのサービスワーカーに関する情報であるServiceWorkerInfoオブジェクト。
serviceWorkers.getFromVersionID(versionId)
- versionId数値
戻り値 ServiceWorkerInfo - このサービスワーカーに関する情報
サービスワーカーが存在しない場合、または実行されていない場合、このメソッドは例外をスローします。