Un format de correspondance est une URL avec la structure suivante, utilisée pour spécifier un groupe d'URL :
<scheme>://<host>:<port>/<path>
scheme : doit être l'une des valeurs suivantes, séparée du reste du modèle par un signe deux-points suivi d'une double barre oblique (://) :
httphttps- Un caractère générique
*, qui ne correspond qu'àhttpouhttps file
Pour savoir comment injecter des scripts de contenu dans des schémas non compatibles, tels que about: et data:, consultez Injection dans les frames associés.
host : nom d'hôte (www.example.com). Un * avant le nom d'hôte pour correspondre aux sous-domaines (*.example.com) ou simplement un caractère générique *.
- Si vous utilisez un caractère générique dans le modèle d'hôte, il doit s'agir du premier ou du seul caractère, et il doit être suivi d'un point (.) ou d'une barre oblique (/).
port (facultatif) : port à faire correspondre. Par défaut, il est traité comme un caractère générique avec le même comportement que :*.
path : chemin de l'URL (/example). Pour les autorisations d'hôte, le chemin est obligatoire, mais ignoré. Le caractère générique (/*) doit être utilisé par convention.
Les extensions utilisent des modèles de correspondance dans différents cas d'utilisation, y compris les suivants :
- Injection du script de contenu.
- Déclarez les autorisations d'hôte que certaines API Chrome requièrent en plus de leurs propres autorisations.
- Accorder l'accès aux ressources accessibles sur le Web
- Autoriser l'envoi et la réception de messages à l'aide de la clé de fichier manifeste "externally_connectable.matches".
Cas particuliers
"<all_urls>"- : correspond à n'importe quelle URL commençant par un schéma autorisé, y compris à n'importe quel format listé sous Formats valides. Comme il affecte tous les hôtes, l'examen des extensions qui l'utilisent sur le Chrome Web Store peut prendre plus de temps.
"file:///"- Permet à votre extension de s'exécuter sur des fichiers locaux. Ce modèle exige que l'utilisateur accorde manuellement l'accès. Notez que dans ce cas, trois barres obliques sont nécessaires, et non deux.
- URL et adresses IP localhost
- Utilisez
http://localhost/*ouhttp://127.0.0.1/*(pour faire correspondre une adresse IP). Les modèles de correspondance correspondent à tous les ports, sauf si un port explicite est spécifié. - Schémas de correspondance des domaines de premier niveau
- Chrome n'accepte pas les modèles de correspondance pour les domaines de premier niveau (TLD). Spécifiez vos modèles de correspondance dans des TLD individuels, comme dans
http://google.es/*ethttp://google.fr/*.
Exemples de formats
https://*/*ouhttps://*/- Correspond à n'importe quelle URL utilisant le schéma
https. https://*/foo*- Correspond à n'importe quelle URL utilisant le schéma
https, sur n'importe quel hôte, avec un chemin commençant parfoo. Par exemple,https://example.com/foo/bar.htmlethttps://www.google.com/foosont des correspondances. https://*.google.com/foo*bar- Correspond à n'importe quelle URL utilisant le schéma
https, sur un hôte google.com, avec un chemin commençant parfooet se terminant parbar. Par exemple,https://www.google.com/foo/baz/barethttps://docs.google.com/foobarsont des correspondances. file:///foo*- : correspond à tout fichier local dont le chemin commence par
foo. Par exemple,file:///foo/bar.htmletfile:///foosont des correspondances. http://127.0.0.1/*ouhttp://127.0.0.1/- Correspond à n'importe quelle URL utilisant le schéma
httpsur l'hôte 127.0.0.1. Par exemple,http://127.0.0.1/ethttp://127.0.0.1/foo/bar.htmlsont des correspondances. http://localhost/*- correspond à n'importe quel port localhost.
*://mail.google.com/ou*://mail.google.com/*- : correspond à n'importe quelle URL commençant par
http://mail.google.comouhttps://mail.google.com.