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àtruedans 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.