"externally_connectable"
マニフェスト プロパティは、拡張機能とウェブページが runtime.connect()
と runtime.sendMessage()
を使用して拡張機能に接続します。
メッセージの受け渡しに関するチュートリアルについては、拡張機能間のメッセージングとメッセージの送信をご覧ください。 ウェブページから削除します
external_connectable を使用せずに接続する
拡張機能のマニフェストで externally_connectable
キーが宣言されていない場合、すべての拡張機能は接続できますが、ウェブページは接続できません。そのためマニフェストを更新して externally_connectable
("ids": ["*"]
が指定されていない場合、他の拡張機能では) 拡張機能に接続できなくなります。これは意図しない結果である可能性があるため、 考えています
マニフェスト
{ "name": "My externally connectable extension", "externally_connectable": { "ids": [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", ... ], // If this field is not specified, no web pages can connect. "matches": [ "https://*.google.com/*", "*://*.chromium.org/*", ... ], "accepts_tls_channel_id": false }, ... }
リファレンス
"externally_connectable"
マニフェスト キーには、次のオプションのプロパティが含まれます。
"ids"
- 接続が許可された拡張機能の ID。空白または未指定の場合、拡張機能やアプリは接続できません。ワイルドカード
"*"
は、すべての拡張機能とアプリの接続を許可します。 "matches"
- 接続が許可されたウェブページの URL パターン。空白または未指定の場合、どのウェブページも接続できません。パターンにワイルドカード ドメインや(有効な)トップレベル ドメインのサブドメインを含めることはできません。次に例を示します。
✅ 有効な URL | ❌ 無効な URL |
---|---|
*://example.com/ | *://example.com/one/ |
http://*.example.org/* | <all_urls> |
https://example.com/* | http://*/* |
"accepts_tls_channel_id"
- 拡張機能に接続しているウェブページの TLS チャネル ID を使用できるようにします。また、ウェブページで以下を設定して、TLS チャンネル ID を拡張機能に送信するよう選択する必要があります。 runtime.connect の connectInfo または runtime.sendMessage のオプションで
includeTlsChannelId
をtrue
に設定します。false
に設定した場合、 runtime.MessageSender.tlsChannelId は、どのような状況でも設定されません。
コンテンツ スクリプトには影響しません。