問題タブ [firefox-addon-webextensions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
718 参照

javascript - Firefox WebExtension CSP の問題

Chrome 拡張機能を Firefox WebExtension に変換しようとしています。これまでのところうまくいきましたが、何らかの理由で、GitHub で問題に直面しています。私の拡張機能はページの横に小さな div を追加しますが、それを GitHub に追加しようとするとエラーが発生します

コンテンツ セキュリティ ポリシー: ページの設定により、自分自身 ("script-src https://assets-cdn.github.com ") でのリソースの読み込みがブロックされました。

私はmanifest.jsonCSPを

この問題に関するアドバイスをいただければ幸いです。そのままChromeで問題なく動作します。

0 投票する
1 に答える
2405 参照

firefox-addon - 新しい WebExtensions API を使用して Firefox の設定 (about:config) を変更するには?

古い API で設定 (about:config) を変更するには、次のようにします。

Firefox の新しい WebExtensions アドオンの件名については何も見つかりません。まだ利用できませんか?

0 投票する
1 に答える
537 参照

javascript - Firefox のテーマを検出する方法

WebExtension の場合browser.browserAction.setIcon、アイコンを設定するために使用します。このサンプルでわかるように、収まるように、アイコンには暗い背景または明るい背景が必要です。

私の Javascript コードはどのテーマが有効かをどのように知ることができますか? または、適切なアイコンを作成できるように、ツールバーの背景色を特定できますか?

ここに画像の説明を入力

0 投票する
1 に答える
81 参照

firefox - Firefox WebExtension の署名と送信

Chrome拡張機能 ( https://chrome.google.com/webstore/detail/clipmystuff/ponkmhjofooonokejbbmladaomkbbgcd ) を Firefox EebExtension に移植できました。Firefox(46) ではすべて正常に動作していますが、拡張機能をモジラストア。拡張機能をアドオン開発者ハブにアップロードした後、ステップ 2 でスタックしました。

ステップ 2: https://addons.mozilla.org/en-US/developers/addon/submit/2

過去 4 時間からステップ 2 でスタックしています。WebExtension のために他にやらなければならないことがありますか。

ここに画像の説明を入力

0 投票する
1 に答える
206 参照

firefox - Firefox WebExtension のオプション ボタンが機能しない

古い拡張機能を更新して、古い XUL コードから html/css "chrome" コードに渡します。

.json ファイルの "options_ui" タグに問題があります... 現在の firefox バージョン (46.0.1) を使用して拡張機能を読み込むと、拡張機能の "options" ボタンが表示されません ( about:アドオン)。

しかし、現在の開発者バージョン (48.0a2) を使用してロードすると、期待どおりに表示され、動作します。

オプションボタン

どうすればこれを修正できますか? XUL コードを使用せずにオプション ボタンを表示する方法が必要です。

これは、json ファイルの options_ui のセクションです。

"options_ui": { "ページ": "html/options.htm" },

0 投票する
1 に答える
2333 参照

javascript - Webextension で正しいパーミッションでクロスドメイン XHR リクエストを実行するには?

目標: HTML および JavaScript ファイルがロードされる前にそれらを検出する Firefox Webextension (Chrome 拡張機能に類似) を開発したいと考えています。これらのファイルに特定のコンテンツがある場合はブロックされ、そうでない場合は通過が許可されます。

問題: Access-Control-Allow-Origin ヘッダーが見つからないため、"Cross-Origin" エラーがスローされるため、異なるドメインを持つファイル コンテンツを収集できません。

私はこの問題について多くのことを読みましたが、Webextension マニフェストでアクセス許可が設定されている場合、Access-Control-Allow-Origin ヘッダーは必要ないとドキュメントに書かれています。Mozilla Docの引用は次のとおりです。

アクセス許可キーを使用して、拡張機能の特別な権限を要求します。[...] キーには 3 種類の権限を含めることができます: [...] ホスト権限 [...] ホスト権限は一致パターンとして指定され、各パターンは拡張機能が追加の権限を要求している URL のグループを識別します。 . 追加の権限には、次のものが含まれます。これらのオリジンへのXHR アクセス [...]

私のmanifest.json:

ここでは、パーミッション キーに"*://*/*"が含まれています。これは、各 Web リソースにパーミッションが必要であり、クロス オリジン エラーが発生しないことを意味します。それとも私が間違っていますか?エラーが発生する理由、またはエラーを回避する方法を誰か教えてもらえますか?

私のbackgroundscript.js:

私の contentscript.js:

contentscript.js では、jQuery の$.getメソッドを使用して Web サイトのコンテンツにアクセスします。また、 dataType jsonp で $.ajax を試しましが、この場合、無限のアクセス チェーンが得られ、スクリプトはリソースを無制限に読み込もうとします。新しい接続が発生した場合にアクセスされる chrome.webRequest.onBeforeRequest リスナーを使用している可能性があります。この場合、無限ループに陥りますか?

私が読んだMozilla Docでは、chrome.webRequest.onBeforeRequest に requestBody というパラメーターがあります。

HTTP 要求本文データが含まれます。[...] 1. Firefox は「requestBody」オプションをサポートしていません。

  1. このソリューションが最適です => しかし、利用できません
  2. 許可パターンで $.get を試しました => Cross-Origin エラーが発生します
  3. jsonp と同じ許可パターンで $.ajax を試しました => 無限ループが発生します

もう一度質問します:ドメイン名が開いている場合 ("*://*/*" のようなパターン)、クロスオリジン エラーなしで別のドメインのファイルのコンテンツにアクセスするにはどうすればよいですか?