La propriété du fichier manifeste "externally_connectable"
déclare les extensions et les pages Web pouvant
se connecter à votre extension à l'aide de runtime.connect()
et de runtime.sendMessage()
.
Pour accéder à un tutoriel sur la transmission de messages, consultez les sections Messages entre les extensions et Envoyer des messages à partir de pages Web.
Se connecter sans external_connectable
Si la clé externally_connectable
n'est pas déclarée dans le fichier manifeste de votre extension, toutes les extensions peuvent se connecter, mais aucune page Web ne peut se connecter. Par conséquent, lorsque vous mettez à jour votre fichier manifeste afin d'utiliser
externally_connectable
, si "ids": ["*"]
n'est pas spécifié, les autres extensions
ne pourra plus se connecter à votre extension. Il peut s'agir d'une conséquence inattendue.
à l'esprit.
Fichier manifeste
{
"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
},
...
}
Référence
La clé du fichier manifeste "externally_connectable"
inclut les propriétés facultatives suivantes:
"ids"
- Identifiants des extensions autorisées à se connecter. Si vous ne renseignez pas ce champ, aucune extension ni application ne peut se connecter. Le caractère générique
"*"
permet à toutes les extensions et applications de se connecter. "matches"
- Formats d'URL des pages Web autorisées à se connecter. Si ce champ n'est pas spécifié, aucune page Web ne peut se connecter. Les formats ne peuvent pas inclure de domaines avec des caractères génériques ni de sous-domaines de domaines de premier niveau(effectifs), par exemple:
✅ URL valides | ❌ URL non valides |
---|---|
*://example.com/ |
*://example.com/one/ |
http://*.example.org/* |
<all_urls> |
https://example.com/* |
http://*/* |
"accepts_tls_channel_id"
- Permet à l'extension d'utiliser l'ID de canal TLS de la page Web qui y est associée. La page Web doit également choisir d'envoyer l'ID du canal TLS à l'extension en définissant
includeTlsChannelId
àtrue
dans les options connectInfo de runtime.connect ou les options de runtime.sendMessage. Si défini surfalse
, runtime.MessageSender.tlsChannelId ne sera en aucun cas défini.
Cela n'affecte pas les scripts de contenu.