"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"
- 允許連結的網頁網址模式。如果留空或未指定,則無法連結任何網頁。模式不得包含萬用字元網域或 (有效) 頂層網域的子網域,例如:
✅ 有效網址 | ❌ 網址無效 |
---|---|
*://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。
這不會影響內容指令碼。