k08045kk / RejectServiceWorker

MIT License
17 stars 2 forks source link

"Uncaught (in promise) Error: Reject to register a ServiceWorker." #14

Closed k08045kk closed 9 months ago

k08045kk commented 10 months ago

「Uncaught (in promise) Error: Reject to register a ServiceWorker.」 上記エラーを拡張機能が出力する。

サイト側が register() のエラーをキャッチしていない場合に発生する。 manifest v2 では発生しない。 manifest v3 から発生する。 現時点では、エラーを発生するこの状態を良しとする。良案があれば対応する。

サンプル

ServiceWorkerContainer.prototype.register = (scriptURL, options) => {
  return Promise.reject(new Error('Reject to register a ServiceWorker.'));
  // Error: "Uncaught (in promise) Error: Reject to register a ServiceWorker."
  // If the site does not catch it, the above error will occur.
  // It will be described as an error on the extension side. (occurs from manifest v3)
};

回避策

あまり現実的ではなさそう…。

k08045kk commented 9 months ago

Chrome 120 で再確認 拡張機能のエラーページへのエラー出力がなくなっている。 DevTools には、引き続き警告として出力されている。

k08045kk commented 8 months ago

追記 拡張機能ページの [デベロッパーモード] を有効にしているとエラーが出力される。 拡張機能ページの [デベロッパーモード] を無効にしているとエラーが出力されない。 一般ユーザーには、影響なしと判断する。