Definir padrões de correspondência para uma extensão para aceder a URLs de ficheiros
Um Suplemento do Microsoft Edge (extensão) pode pedir acesso aos file
URLs. Para ativar esta funcionalidade, tem de configurar explicitamente este acesso. O acesso aos file
URLs não é automático. Tem de visitar a página Gestão de extensões no site suplementos do Microsoft Edge para optar pelo file
acesso a cada extensão do Microsoft Edge que solicite acesso aos file
URLs.
Para Suplementos do Microsoft Edge (extensões), a correspondência de padrões de script de conteúdo e permissão de anfitrião funciona da seguinte forma.
As permissões de anfitrião e a correspondência de scripts de conteúdo baseiam-se num conjunto de URLs definidos por padrões de correspondência. Um padrão de correspondência é essencialmente um URL que começa com um esquema permitido (http
, https
, file
ou ftp
, e que pode conter carateres "*
". O padrão <all_urls>
especial corresponde a qualquer URL que comece com um esquema permitido. Cada padrão de correspondência tem 3 partes:
scheme — por exemplo,
http
ou oufile
*
_host_
— por exemplo,www.google.com
ou*.google.com
ou*
; se o esquema for ficheiro, não existe nenhuma parte do anfitrião._path_
— por exemplo,/*
,/foo*
ou/foo/bar
. O caminho tem de estar presente numa permissão de anfitrião, mas é sempre tratado como/*
.
Sintaxe básica
A sintaxe básica:
<url-pattern> := <scheme>://<host><path>
<scheme> := '*' | 'http' | 'https' | 'file' | 'ftp'
<host> := '*' | '*.' <any char except '/' and '*'>+
<path> := '/' <any chars>
O significado de *
depende se está no esquema, anfitrião ou parte do caminho. Se o esquema for *
, corresponde a http
ou , https
e não file
a , ou ftp
. Se o anfitrião for apenas *
, corresponde a qualquer anfitrião. Se o anfitrião for *.hostname
, corresponde ao anfitrião especificado ou a qualquer um dos subdomínios. Na secção caminho, cada um *
corresponde a 0 ou mais carateres. A tabela seguinte mostra alguns padrões válidos.
Exemplos de padrões válidos
Padrão | Função | Exemplos de URLs correspondentes |
---|---|---|
http://*/* |
Corresponde a qualquer URL que utilize o esquema http |
http://www.google.com
http://example.org/foo/bar.html
|
http://*/foo* |
Corresponde a qualquer URL que utilize o esquema http, em qualquer anfitrião, desde que o caminho comece por /foo |
http://example.com/foo/bar.html
http://www.google.com/foo
|
https://*.google.com/foo*bar |
Corresponde a qualquer URL que utilize o esquema https, está num google.com anfitrião (como www.google.com , docs.google.com ou google.com ), desde que o caminho comece e /foo termine com bar |
https://www.google.com/foo/baz/bar
https://docs.google.com/foobar
|
http://example.org/foo/bar.html |
Corresponde ao URL especificado | http://example.org/foo/bar.html |
file:///foo* |
Corresponde a qualquer ficheiro local cujo caminho comece por /foo |
file:///foo/bar.html
file:///foo
|
http://127.0.0.1/* |
Corresponde a qualquer URL que utilize o http esquema e esteja no anfitrião 127.0.0.1 |
http://127.0.0.1
http://127.0.0.1/foo/bar.html
|
*://mail.google.com/* |
Corresponde a qualquer URL que comece com http://mail.google.com ou https://mail.google.com . |
http://mail.google.com/foo/baz/bar
https://mail.google.com/foobar
|
<all_urls> |
Corresponde a qualquer URL que utilize um esquema permitido. (Consulte o início desta secção para obter a lista de esquemas permitidos.) |
http://example.org/foo/bar.html
file:///bar/baz.html
|
Exemplos de padrões inválidos
Eis alguns exemplos de correspondências de _invalid_
padrões:
Padrão incorreto | Por que é mau |
---|---|
http://www.foo.com |
Não _path_ |
http://*foo/bar |
"* " no anfitrião só pode ser seguido por um ". " ou "/ " |
http://foo.*.bar/baz |
Se '* ' estiver no _host_ , tem de ser o primeiro caráter |
http:/bar |
Separador em falta _scheme_ ("/ " deve ser "// ") |
foo://* |
Inválido _scheme_ |
Alguns esquemas não são suportados em todos os contextos.
Observação
Partes desta página são modificações baseadas no trabalho criado e partilhado pela Google e utilizado de acordo com os termos descritos na Licença Internacional Creative Commons Attribution 4.0. A página original encontra-se aqui.
Este trabalho é licenciado ao abrigo de uma Licença Internacional creative Commons Attribution 4.0.