Un pattern di corrispondenza è un URL con la seguente struttura, utilizzato per specificare un gruppo di URL:
<scheme>://<host>/<path>
scheme: deve essere uno dei seguenti, separato dal resto del pattern mediante due punti seguiti da una doppia barra (://
):
http
https
- Un carattere jolly
*
che corrisponde solo ahttp
ohttps
file
Per informazioni sull'inserimento di script di contenuti in schemi non supportati, come about:
e data:
, consulta Inserzione in frame correlati.
host: un nome host (www.example.com
). Un *
prima del nome host per trovare corrispondenze con i sottodomini (*.example.com
) o semplicemente un carattere jolly *
.
- Se utilizzi un carattere jolly nel pattern host, deve essere il primo o l'unico carattere e deve essere seguito da un punto (.
) o da una barra (/
).
path: un percorso dell'URL (/example
). Per le autorizzazioni host, il percorso è obbligatorio, ma viene ignorato. Il carattere jolly (/*
) deve essere utilizzato per convenzione.
Le estensioni utilizzano i pattern di corrispondenza in una serie di casi d'uso, tra cui:
- Iniezione di script di contenuti.
- Dichiarazione delle autorizzazioni host richieste da alcune API di Chrome oltre alle proprie autorizzazioni.
- Concedere l'accesso alle risorse accessibili tramite il web.
- Consentire l'invio e la ricezione di messaggi utilizzando la chiave manifest "externally_connectable.matches".
Casi particolari
"<all_urls>"
- Corrisponde a qualsiasi URL che inizia con uno schema consentito, inclusi tutti i pattern elencati nella sezione Pattern validi. Poiché interessa tutti gli host, le revisioni del Chrome Web Store per le estensioni che lo utilizzano potrebbero richiedere più tempo.
"file:///"
- Consente all'estensione di essere eseguita sui file locali. Questo pattern richiede all'utente di concedere l'accesso manualmente. Tieni presente che in questo caso sono necessarie tre barre, non due.
- URL e indirizzi IP di localhost
- Per trovare una corrispondenza con qualsiasi porta localhost durante lo sviluppo, utilizza
http://localhost/*
. Per gli indirizzi IP, specifica l'indirizzo più un carattere jolly nel percorso, come inhttp://127.0.0.1/*
. Puoi anche utilizzarehttp://*:*/*
per trovare corrispondenze per localhost, indirizzi IP e qualsiasi porta. - Pattern di corrispondenza dei domini di primo livello
- Chrome non supporta i pattern di corrispondenza per i domini di primo livello (TLD). Specifica i pattern di corrispondenza all'interno dei singoli TLD, come in
http://google.es/*
ehttp://google.fr/*
.
Pattern di esempio
https://*/*
ohttps://*/
- Corrisponde a qualsiasi URL che utilizza lo schema
https
. https://*/foo*
- Corrisponde a qualsiasi URL che utilizza lo schema
https
, su qualsiasi host, con un percorso che inizia confoo
. Alcuni esempi di corrispondenze sonohttps://example.com/foo/bar.html
ehttps://www.google.com/foo
. https://*.google.com/foo*bar
- Corrisponde a qualsiasi URL che utilizza lo schema
https
su un host google.com, con un percorso che inizia confoo
e termina conbar
. Alcuni esempi di corrispondenze sonohttps://www.google.com/foo/baz/bar
ehttps://docs.google.com/foobar
. file:///foo*
- Corrisponde a qualsiasi file locale il cui percorso inizia con
foo
. Alcuni esempi di corrispondenze sonofile:///foo/bar.html
efile:///foo
. http://127.0.0.1/*
ohttp://127.0.0.1/
- Corrisponde a qualsiasi URL che utilizza lo schema
http
e si trova sull'host 127.0.0.1. Alcuni esempi di corrispondenze sonohttp://127.0.0.1/
ehttp://127.0.0.1/foo/bar.html
. http://localhost/*
- Corrisponde a qualsiasi porta localhost.
*://mail.google.com/
o*://mail.google.com/*
- Corrisponde a qualsiasi URL che inizia con
http://mail.google.com
ohttps://mail.google.com
.