私はいくつかの診断ツールを書いており、そのためのクロム拡張機能を作成しようとしています. 私が持っているのは、iframe のあるページです。iframe には、 に敷設されているサイトが含まれていdiffrent domain
ます。
私が必要としているのは、これら 2 つのサイト間の通信です。私が理解したのは、content script
これらの各ドキュメント (iframe ドキュメントとトップ ウィンドウ ドキュメント) に を追加するだけで、background script
と メッセージ フローによってそれらの間の通信を設定できるということです。
問題は、現在 iframe 内のドキュメントのアドレスがわからないことです。ユーザーは複数の異なるページを iframe に入れることができます。このため、プロパティに何を入れるかわからないため、ファイルをcontent script
使用して追加できません。manifest.json
matches
フラグをtrueに設定してchrome.tabs.executeScript
メソッドを使用しようとしました。allFrames
iframe ドキュメントがトップ ウィンドウ ドキュメントと同じドメインにある場合は正常に機能しましたが、別のドメインにある場合はcontent script
フレーム ドキュメントに追加されません。
設計時にiframeのURLを知っていれば、マニフェストファイルからそのようにスクリプトを追加できるため、問題は奇妙です...
このような状況で iframe ドキュメントにコンテンツ スクリプトを追加するにはどうすればよいですか?
また、ファイル内のすべてのページへのアクセス許可があることもお伝えしmanifest.json
ます。次のように表示されます"permissions": ["tabs", "http://*/", "https://*/"]
。追加の障害は、iframe ドキュメント コンテンツに統合できないことです。これはサードパーティ コードです。
何か案は?助けてくれてありがとう。