特定のHTTPリクエストをインターセプトし、リクエストが実際のサーバーに送信されることなく静的コンテンツを返すFirefox拡張機能を作成しようとしています(AdBlockと同様)。
チュートリアルを調べて、基本的なファイルレイアウトを作成しました。また、 nsITraceableChannel APIを使用し、オブザーバーを追加して必要な処理を実行する必要があることもわかりました。そのためのサンプルコードがあります。
問題は、このコードを実際にどこに置くかということです。そして、私の拡張機能が実際にロードされて実行されるのはいつですか?バックグラウンドで常に非同期で実行されていますか、それともページビューごとに読み込まれますか?
ドキュメントはこれについてあまり明確ではないようです。この拡張機能はGUIを必要としないので、レイアウトXULファイルは必要ありません(または必要ですか?)。XPCOM(私はそれを正しくやったとは思わない)コンポーネントを書いてみて、それを登録しましchrome.manifest
たが、実行されていないようです。
Firefoxの拡張機能がどのように機能するのか、リクエストを監視するために実際のJavaScriptコードをどこに置くべきかを誰かが正確に説明できますか?または、拡張子が間違っていることを完全に理解しましたか?アドオン、拡張機能、プラグインに違いはありますか?