Safari 拡張機能フレームワークは、拡張機能間のメッセージ パッシングを明示的にサポートしていません。拡張機能が実行されていることをページに知らせずに、これを回避するための実行可能なハックを探しています。
提案 (テストされていません):
1 つの拡張機能は、 openTab() を使用して about:blank#extension-channel への非表示のタブを開きます。もう 1 つは、そのタブを URL で検索して見つけます。それらは、通信するためにそのページの要素を生成および消費します。
拡張機能がドメイン間で Cookie を読み取ることができる場合、一方は extension-homepage.com でランダム IDを使用して Cookie を設定し、もう一方はそれを読み取ります。次に、「」という名前の DOM イベントを作成する
extension-message-[the random ID]
ため、ページはリッスンできません。Safari 開発者に onRequestExternal を API に追加するよう請願してください ;)
別のアプローチを考えることができますか?上記のいずれかが機能するようになりましたか?