質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Firefox WebExtensions

Firefox WebExtensionsは、Firefox向けアドオンをクロスブラウザで開発するためのAPIおよび技術。Google Chrome/Operaでサポートされているextension API との互換性を持ちます。

バックグラウンド処理

バックグラウンド処理とは、マルチタスク環境において、ユーザーに対して前面に表示させている処理の裏側で実行させる処理のことを呼びます。バックグラウンド処理を行う事によって、ユーザーが他の作業に携わることが可能となります。

リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

Chrome extension

Chrome拡張機能

Q&A

0回答

775閲覧

Chrome/Web extensionでバックグラウンドで読み込まれるスクリプトの書き換え、またはリダイレクトを行いたい

__xpa__

総合スコア2

Firefox WebExtensions

Firefox WebExtensionsは、Firefox向けアドオンをクロスブラウザで開発するためのAPIおよび技術。Google Chrome/Operaでサポートされているextension API との互換性を持ちます。

バックグラウンド処理

バックグラウンド処理とは、マルチタスク環境において、ユーザーに対して前面に表示させている処理の裏側で実行させる処理のことを呼びます。バックグラウンド処理を行う事によって、ユーザーが他の作業に携わることが可能となります。

リダイレクト

プログラムの入力元や出力先を通常とは別の場所に転送させることをリダイレクトと呼びます。

Chrome extension

Chrome拡張機能

0グッド

0クリップ

投稿2021/11/12 16:50

試したコードは以下のとおりです

javascript

1function listener(details) { 2 let filter = browser.webRequest.filterResponseData(details.requestId); 3 let decoder = new TextDecoder("utf-8"); 4 let encoder = new TextEncoder(); 5 6 filter.ondata = event => { 7 let str = decoder.decode(event.data, {stream: true}); 8 str = str.replace('hoge', 'hogehoge'); 9 filter.write(encoder.encode(str)); 10 filter.disconnect(); 11 } 12 13 return {}; 14} 15 16chrome.webRequest.onBeforeRequest.addListener( 17 listener, 18 {urls: ["https://example.com/hoge*"]}, 19 ["blocking"] 20); 21

javascript

1var pattern = "https://example.com/hoge*"; 2 3function redirect(requestDetails) { 4 return { 5 redirectUrl: "https://example.com/hogehoge.js" 6 }; 7} 8 9chrome.webRequest.onBeforeRequest.addListener( 10 redirect, 11 {urls:[pattern]}, 12 ["blocking"] 13);

リダイレクトのスクリプトはタブで開けば問題なくリダイレクトされますが、
scriptタグなどで読み込んだリクエストはリダイレクトされません。
また、書き換えのスクリプトは一切機能しませんでした。
エラーメッセージは一切表示されていません。
なにか解決策はありませんか?
##動作確認に使用したブラウザ
windows firefox 94.0.1
windows chrome 95.0.4638.69
※ブラウザごとにchrome.webRequest.onBeforeRequestの部分はbrowserに書き換えています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問