Definición de patrones de coincidencia para que una extensión acceda a las direcciones URL de archivo
Un complemento de Microsoft Edge (extensión) puede solicitar acceso a file
las direcciones URL. Para habilitar esta característica, debe configurar explícitamente este acceso. El acceso a file
las direcciones URL no es automático. Debe visitar la página de administración de extensiones en el sitio web de complementos de Microsoft Edge para participar en file
el acceso a cada extensión de Microsoft Edge que solicite acceso a file
direcciones URL.
En el caso de los complementos (extensiones) de Microsoft Edge, el permiso de host y la coincidencia de patrones de script de contenido funcionan como se indica a continuación.
Los permisos de host y la coincidencia de scripts de contenido se basan en un conjunto de direcciones URL definidas por patrones de coincidencia. Un patrón de coincidencia es básicamente una dirección URL que comienza con un esquema permitido (http
, https
, file
o ftp
, y que puede contener caracteres ''*
. El patrón <all_urls>
especial coincide con cualquier dirección URL que comience con un esquema permitido. Cada patrón de coincidencia tiene 3 partes:
esquema: por ejemplo,
http
ofile
*
_host_
— por ejemplo,www.google.com
o*.google.com
o*
; si el esquema es archivo, no hay ninguna parte host._path_
: por ejemplo,/*
,/foo*
o/foo/bar
. La ruta de acceso debe estar presente en un permiso de host, pero siempre se trata como/*
.
Sintaxis básica
La sintaxis básica:
<url-pattern> := <scheme>://<host><path>
<scheme> := '*' | 'http' | 'https' | 'file' | 'ftp'
<host> := '*' | '*.' <any char except '/' and '*'>+
<path> := '/' <any chars>
El significado de depende de *
si está en la parte de esquema, host o ruta de acceso. Si el esquema es *
, entonces coincide con http
o https
, y no file
con , o ftp
. Si el host es solo *
, entonces coincide con cualquier host. Si el host es *.hostname
, coincide con el host especificado o con cualquiera de los subdominios. En la sección ruta de acceso, cada *
uno coincide con 0 o más caracteres. En la tabla siguiente se muestran algunos patrones válidos.
Ejemplos de patrones válidos
Patrón | Qué hace | Ejemplos de direcciones URL coincidentes |
---|---|---|
http://*/* |
Coincide con cualquier dirección URL que use el esquema http. |
http://www.google.com
http://example.org/foo/bar.html
|
http://*/foo* |
Coincide con cualquier dirección URL que use el esquema http, en cualquier host, siempre y cuando la ruta de acceso comience por /foo |
http://example.com/foo/bar.html
http://www.google.com/foo
|
https://*.google.com/foo*bar |
Coincide con cualquier dirección URL que use el esquema https, se encuentra en un google.com host (como www.google.com , docs.google.com o google.com ), siempre y cuando la ruta de acceso comience con /foo y termine con . bar |
https://www.google.com/foo/baz/bar
https://docs.google.com/foobar
|
http://example.org/foo/bar.html |
Coincide con la dirección URL especificada | http://example.org/foo/bar.html |
file:///foo* |
Coincide con cualquier archivo local cuya ruta de acceso comienza por /foo |
file:///foo/bar.html
file:///foo
|
http://127.0.0.1/* |
Coincide con cualquier dirección URL que use el http esquema y esté en el host. 127.0.0.1 |
http://127.0.0.1
http://127.0.0.1/foo/bar.html
|
*://mail.google.com/* |
Coincide con cualquier dirección URL que comience por http://mail.google.com o https://mail.google.com . |
http://mail.google.com/foo/baz/bar
https://mail.google.com/foobar
|
<all_urls> |
Coincide con cualquier dirección URL que use un esquema permitido. (Consulte el principio de esta sección para obtener la lista de esquemas permitidos). |
http://example.org/foo/bar.html
file:///bar/baz.html
|
Ejemplos de patrones no válidos
Estos son algunos ejemplos de coincidencias de _invalid_
patrones:
Patrón incorrecto | ¿Por qué es malo? |
---|---|
http://www.foo.com |
No_path_ |
http://*foo/bar |
'* ' en el host solo puede ir seguido de '. ' o '/ ' |
http://foo.*.bar/baz |
Si '* ' está en , _host_ debe ser el primer carácter |
http:/bar |
El separador que falta _scheme_ ('/ ' debe ser "// ") |
foo://* |
No válido _scheme_ |
Algunos esquemas no se admiten en todos los contextos.
Nota:
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por Google y usadas según los términos descritos en la licencia internacional creative Commons Attribution 4.0. La página original se encuentra aquí.
Esta obra está licenciada bajo una Licencia Internacional Creative Commons Attribution 4.0.