externally_connectable
类型 | 对象 |
---|---|
必填 | 否 |
清单版本 | 2 或更高版本 |
示例 |
"externally_connectable": { "ids": [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "cccccccccccccccccccccccccccccccc" ], "matches": [ "https://example1.com/*", "*://*.example2.com/*" ] } |
Externally connectable 控制哪些其他扩展和网页可以使用 runtime.connect()
和 runtime.sendMessage()
消息传递与扩展通信。如果未指定 externally_connectable
,则所有扩展可以相互通信,但不能与网页通信。
注意: 用于与网页通信
- 在 Chrome 中,使用
chrome.runtime.connect
和chrome.runtime.sendMessage
。这些方法仅在至少有一个扩展监听消息时可用,请参见 chrome.runtime 在 Chrome 106 中将不再无条件地定义 以获取更多详细信息。 - 在 Safari 中,使用
browser.runtime.connect
和browser.runtime.sendMessage
。 - 在 Firefox 中,不支持任何 API。请参见 Firefox 错误 1319168.
"ids" 属性
ids
允许此扩展与通过扩展标识符指定的其他已安装扩展通信。使用模式 "*"
与所有扩展通信。
"matches" 属性
matches
是正则表达式的列表,它允许扩展与匹配该表达式的网页通信。
注意: 如果未指定 externally_connectable
,则允许扩展之间通信,就像 externally_connectable
指定了 {"ids": ["*"] }
一样。因此,如果指定了 externally_connectable.matches
,则不要忘记添加 ids
,如果你想与其他扩展通信。
浏览器兼容性
BCD 表仅在浏览器中加载