Mit der Manifesteigenschaft "externally_connectable" wird deklariert, welche Erweiterungen und Webseiten sich
über runtime.connect() und runtime.sendMessage() mit Ihrer Erweiterung verbinden können.
Eine Anleitung zur Nachrichtenübermittlung finden Sie unter Nachrichten zwischen Erweiterungen senden und Nachrichten von Webseiten senden.
Verbinden ohne „externally_connectable“
Wenn der Schlüssel externally_connectable im Manifest Ihrer Erweiterung nicht deklariert ist, können sich alle Erweiterungen verbinden, aber keine Webseiten. Wenn Sie Ihr Manifest also aktualisieren, um
externally_connectable zu verwenden, und "ids": ["*"] nicht angeben, können sich andere Erweiterungen nicht mehr mit Ihrer Erweiterung verbinden. Das kann unerwünschte Folgen haben.
Manifest
{
"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
},
...
}
Referenz
Der Manifestschlüssel "externally_connectable" enthält die folgenden optionalen Eigenschaften:
"ids"- Die IDs der Erweiterungen, die sich verbinden dürfen. Wenn leer gelassen oder nicht angegeben, können sich keine Erweiterungen oder Apps verbinden. Mit dem Platzhalter
"*"können sich alle Erweiterungen und Apps verbinden. "matches"- Die Übereinstimmungsmuster für Webseiten, die sich verbinden dürfen. Wenn leer gelassen oder nicht angegeben, können sich keine Webseiten verbinden.
"accepts_tls_channel_id"- Ermöglicht der Erweiterung, die TLS-Kanal-ID der Webseite zu verwenden, die sich mit ihr verbindet. Die Webseite muss auch die TLS-Kanal-ID an die Erweiterung senden, indem sie
includeTlsChannelIdauftruein den connectInfo oder options von runtime.connect oder runtime.sendMessage setzt. Wenn auffalsegesetzt, runtime.MessageSender.tlsChannelId wird unter keinen Umständen festgelegt.
Dies hat keine Auswirkungen auf Content-Skripts.