Descrição
Use a API chrome.webRequest
para observar e analisar o tráfego e interceptar, bloquear ou modificar solicitações em andamento.
Permissões
webRequest
Manifesto
É necessário declarar a permissão "webRequest"
no manifesto de extensões para usar a solicitação da Web.
com as permissões de host necessárias. Para interceptar uma solicitação de sub-recurso, o
precisa ter acesso ao URL solicitado e ao iniciador dele. Exemplo:
{
"name": "My extension",
...
"permissions": [
"webRequest"
],
"host_permissions": [
"*://*.google.com/*"
],
...
}
A partir do Chrome 108, será possível fornecer credenciais de eventos onAuthRequired
de forma assíncrona se você usar "webRequest"
e "webRequestAuthProvider"
.
permissões.
Ciclo de vida das solicitações
A API de solicitação da Web define um conjunto de eventos que seguem o ciclo de vida de uma solicitação da Web. Você pode usar esses eventos para observar e analisar o tráfego. Certos eventos síncronos permitirão que você intercepte, bloquear ou modificar uma solicitação.
O ciclo de vida do evento para solicitações bem-sucedidas é ilustrado aqui, seguido pelas definições do evento:
onBeforeRequest
(opcionalmente síncrono)- Dispara quando uma solicitação está prestes a ocorrer. Esse evento é enviado antes de qualquer conexão TCP ser estabelecida e pode ser usado para cancelar ou redirecionar solicitações.
onBeforeSendHeaders
(opcionalmente síncrono)- Dispara quando uma solicitação está prestes a ocorrer e os cabeçalhos iniciais foram preparados. O evento é
permite que as extensões adicionem, modifiquem e excluam cabeçalhos de solicitação (*). A
onBeforeSendHeaders
é transmitido a todos os inscritos. Portanto, diferentes assinantes podem tentar modificar a solicitação; consulte a seção Detalhes da implementação para saber como isso é feito. Este evento pode ser usada para cancelar a solicitação. onSendHeaders
- É acionado após todas as extensões terem a chance de modificar os cabeçalhos da solicitação e apresenta o resultado final Versão (*). O evento é acionado antes que os cabeçalhos sejam enviados para a rede. Este evento é informativa e gerenciada de modo assíncrono. Ele não permite modificar ou cancelar a solicitação.
onHeadersReceived
(opcionalmente síncrono)- É acionado sempre que um cabeçalho de resposta HTTP(S) é recebido. Devido a redirecionamentos e autenticação solicitações. Isso pode acontecer várias vezes a cada solicitação. Esse evento permite que as extensões adicionar, modificar e excluir cabeçalhos de resposta, como cabeçalhos de tipo de conteúdo de entrada. O armazenamento em cache diretivas são processadas antes que esse evento seja acionado, portanto, a modificação de cabeçalhos como não influencia o cache do navegador. Ele também permite cancelar ou redirecionar o pedido.
onAuthRequired
(opcionalmente síncrono)- Dispara quando uma solicitação exige a autenticação do usuário. Esse evento pode ser tratado de maneira síncrona com fornecer credenciais de autenticação. As extensões podem fornecer credenciais inválidas. Até a próxima. não entrar em um loop infinito ao fornecer repetidamente credenciais inválidas. Isso também pode ser usado para cancelar a solicitação.
onBeforeRedirect
- Dispara quando um redirecionamento está prestes a ser executado. Um redirecionamento pode ser acionado por uma resposta HTTP ou por uma extensão. Este evento é informativo e tratado de forma assíncrona. Ele não permite modifique ou cancele a solicitação.
onResponseStarted
- Dispara quando o primeiro byte do corpo da resposta é recebido. Para solicitações HTTP, isso significa que a a linha de status e os cabeçalhos de resposta estão disponíveis. Este evento é informativo e tratado de forma assíncrona. Ela não permite modificar ou cancelar a solicitação.
onCompleted
- Dispara quando uma solicitação é processada com sucesso.
onErrorOccurred
- Dispara quando uma solicitação não pode ser processada.
A API de solicitação da Web garante que, para cada solicitação, onCompleted
ou onErrorOccurred
seja
disparado como o evento final, com uma exceção: se uma solicitação for redirecionada para um URL data://
,
onBeforeRedirect
é o último evento relatado.
* Observe que a API de solicitação da Web apresenta uma abstração da pilha de rede para a extensão. Internamente, uma solicitação de URL pode ser dividida em várias solicitações HTTP (por exemplo, para buscar informações intervalos de bytes de um arquivo grande) ou podem ser manipulados pela pilha da rede sem se comunicar com o em uma rede VPC. Por esse motivo, a API não fornece os cabeçalhos HTTP finais que são enviados ao em uma rede VPC. Por exemplo, todos os cabeçalhos relacionados ao armazenamento em cache são invisíveis para a extensão.
Os cabeçalhos a seguir não são fornecidos para o evento onBeforeSendHeaders
no momento. Esta lista
não há garantia de que estejam completos ou estáveis.
- Autorização
- Cache-Control
- Conexão
- Tamanho do conteúdo
- Host
- If-Modified-Since
- If-None-Match
- Intervalo if
- Dados parciais
- Pragma
- Autorização-proxy
- Conexão de proxy
- Transfer-Encoding
A partir do Chrome 79, as modificações no cabeçalho da solicitação vão afetar o Compartilhamento de recursos entre origens (CORS)
e verificações de tempo de atividade. Se os cabeçalhos modificados para solicitações de origem cruzada não atenderem aos critérios,
enviando uma simulação do CORS para perguntar ao servidor se esses cabeçalhos podem ser aceitos. Se você realmente precisa
modificar cabeçalhos de modo a violar o protocolo CORS, será necessário especificar 'extraHeaders'
no
opt_extraInfoSpec
. Por outro lado, as modificações no cabeçalho de resposta não funcionam para enganar o CORS
e verificações de tempo de atividade. Para enganar o protocolo CORS, especifique também 'extraHeaders'
para o
modificações de resposta.
A partir do Chrome 79, a API webRequest não intercepta solicitações simuladas do CORS e
de resposta por padrão. Uma simulação do CORS para um URL de solicitação estará visível para uma extensão se houver
listener com 'extraHeaders'
especificado em opt_extraInfoSpec
para o URL da solicitação.
A onBeforeRequest
também pode usar 'extraHeaders'
a partir do Chrome 79.
A partir do Chrome 79, o seguinte cabeçalho de solicitação não é fornecido e não pode ser modificado.
removido sem especificar 'extraHeaders'
em opt_extraInfoSpec
:
- Origem
A partir do Chrome 72, se você precisar modificar as respostas antes de Bloqueio de leitura de origem cruzada
(CORB) possa bloquear a resposta, será necessário especificar 'extraHeaders'
em opt_extraInfoSpec
.
A partir do Chrome 72, os cabeçalhos de solicitação abaixo não são fornecidos e não podem ser modificados
ou removidos sem especificar 'extraHeaders'
em opt_extraInfoSpec
:
- Aceitar idioma
- Accept-Encoding
- Referenciador
- Cookie
A partir do Chrome 72, o cabeçalho de resposta Set-Cookie
não é fornecido e não pode ser modificado
ou removido sem especificar 'extraHeaders'
em opt_extraInfoSpec
.
A partir do Chrome 89, o cabeçalho de resposta X-Frame-Options
não pode ser modificado de forma eficaz
ou removido sem especificar 'extraHeaders'
em opt_extraInfoSpec
.
A API webRequest expõe apenas as solicitações que a extensão tem permissão para ver, considerando o host
do Google Cloud. Além disso, apenas os seguintes esquemas são acessíveis: http://
, https://
,
ftp://
, file://
, ws://
(desde o Chrome 58), wss://
(desde o Chrome 58), urn:
(desde o Chrome 91) ou
chrome-extension://
. Além disso, mesmo algumas solicitações com URLs que usam um dos esquemas acima
estão ocultos. Isso inclui chrome-extension://other_extension_id
, em que other_extension_id
não é
o ID da extensão para lidar com a solicitação, https://www.google.com/chrome
e outros dados
solicitações essenciais para as funcionalidades do navegador. XMLHttpRequests síncronos da sua extensão também são
oculto do bloqueio de manipuladores de eventos para evitar impasses. Para algumas das
com suporte, o conjunto de eventos disponíveis pode ser limitado devido à natureza dos
com o protocolo correspondente. Por exemplo, para o arquivo: esquema, apenas onBeforeRequest
,
onResponseStarted
, onCompleted
e onErrorOccurred
podem ser enviados.
A partir do Chrome 58, a API webRequest oferece suporte à interceptação da solicitação de handshake do WebSocket. Como o handshake é feito por uma solicitação de upgrade HTTP, o fluxo se encaixa em um fluxo orientado por HTTP webRequest. A API não intercepta:
- Mensagens individuais enviadas por uma conexão WebSocket estabelecida.
- Encerramento da conexão WebSocket.
Redirecionamentos não são compatíveis com solicitações WebSocket.
A partir do Chrome 72, uma extensão só poderá interceptar solicitações se tiver um host permissões para o URL solicitado e para o iniciador da solicitação.
A partir do Chrome 96, a API webRequest oferece suporte à interceptação do WebTransport por HTTP/3. solicitação de handshake. Como o handshake é feito por uma solicitação HTTP CONNECT, o fluxo se encaixa em um modelo webRequest orientado por HTTP. Observações:
- Depois que a sessão é estabelecida, as extensões não podem observar ou intervir na sessão por meio do webRequest.
- A modificação de cabeçalhos de solicitação HTTP no
onBeforeSendHeaders
é ignorada. - Redirecionamentos e autenticações não são aceitos no WebTransport por HTTP/3.
Conceitos
Conforme explicado nas seções a seguir, os eventos na API de solicitação da Web usam IDs de solicitação, e você pode opcionalmente especificar filtros e informações extras ao registrar listeners de eventos.
IDs de solicitação
Cada solicitação é identificada por um ID. Esse ID é exclusivo em uma sessão do navegador e o contexto de uma extensão. Ele permanece constante durante o ciclo de vida de uma solicitação e pode ser usado para corresponder eventos à mesma solicitação. Várias solicitações HTTP são mapeadas para uma solicitação da Web no caso de redirecionamento ou autenticação HTTP.
Como registrar listeners de eventos
Para registrar um listener de eventos para uma solicitação da Web, você usa uma variação da addListener()
comum
função. Além de especificar uma função de retorno de chamada, é necessário especificar um argumento de filtro e um argumento de informação extra opcional.
Os três argumentos para o addListener()
da API de solicitação da Web têm as seguintes definições:
var callback = function(details) {...};
var filter = {...};
var opt_extraInfoSpec = [...];
Veja um exemplo de como detectar o evento onBeforeRequest
:
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);
Cada chamada addListener()
usa uma função de callback obrigatória como o primeiro parâmetro. Este callback
recebe um dicionário contendo informações sobre a solicitação de URL atual. A
informações neste dicionário depende do tipo de evento específico, bem como do conteúdo do
opt_extraInfoSpec
:
Se a matriz opcional opt_extraInfoSpec
contiver a string 'blocking'
(permitido apenas para
eventos específicos), a função de retorno de chamada é tratada de forma síncrona. Isso significa que a solicitação
bloqueado até que a função de callback retorne. Nesse caso, o retorno de chamada pode retornar um
webRequest.BlockingResponse
que determina o ciclo de vida posterior da solicitação. Depende
no contexto, essa resposta permite cancelar ou redirecionar uma solicitação (onBeforeRequest
),
cancelar uma solicitação ou modificar cabeçalhos (onBeforeSendHeaders
, onHeadersReceived
) e
cancelar uma solicitação ou fornecer credenciais de autenticação (onAuthRequired
).
Se a matriz opcional opt_extraInfoSpec
contiver a string 'asyncBlocking'
(somente
permitida para onAuthRequired
), a extensão pode gerar a webRequest.BlockingResponse
de forma assíncrona.
O webRequest.RequestFilter
filter
permite limitar as solicitações para as quais os eventos são
acionadas em várias dimensões:
- URLs
- Padrões de URL, como
*://www.google.com/foo*bar
. - Tipos
- Tipos de solicitação, como
main_frame
(um documento carregado para um frame de nível superior),sub_frame
(um documento carregado para um frame incorporado) eimage
(uma imagem em um site). ConsultewebRequest.RequestFilter
- Guia ID
- O identificador de uma guia.
- ID da janela
- O identificador de uma janela.
Dependendo do tipo de evento, é possível especificar strings no opt_extraInfoSpec
para pedir mais
informações sobre a solicitação. Usado para fornecer informações detalhadas apenas sobre os dados da solicitação
caso seja solicitado explicitamente.
Detalhes da implementação
É importante entender vários detalhes de implementação ao desenvolver uma extensão que usa a API de solicitação da Web:
web_accessible_resources
Quando uma extensão usa APIs webRequest para redirecionar uma solicitação de recurso público para um recurso que não pode ser acessado pela Web, ela é bloqueada e resulta em um erro. A instrução acima é verdadeira mesmo se o recurso que não estiver acessível na Web pertencer à extensão de redirecionamento. Para declarar recursos para uso com APIs declarativasWebRequest, a matriz "web_accessible_resources"
precisa ser declarada e preenchida no manifesto, conforme documentado aqui.
Resolução de conflitos
Na implementação atual da API de solicitação da Web, uma solicitação é considerada cancelada se
pelo menos uma extensão instruirá a cancelar a solicitação. Se uma extensão cancelar uma solicitação, todas
extensões são notificadas por um evento onErrorOccurred
. Apenas uma extensão pode redirecionar
ou modificar um cabeçalho de cada vez. Se mais de uma extensão tentar modificar a solicitação, a
a extensão instalada mais recentemente vence, e todas as outras serão ignoradas. Uma extensão não será notificada se
sua instrução de modificação ou redirecionamento foi ignorada.
Armazenamento em cache
O Chrome usa dois caches: um no disco e outro na memória, que são muito rápidos. A vida útil de um
o cache na memória é anexado ao ciclo de vida de um processo de renderização, que corresponde aproximadamente a uma guia.
As solicitações respondidas no cache na memória não ficam visíveis para a API de solicitação da Web. Se um
o manipulador de solicitações muda seu comportamento (por exemplo, o comportamento de acordo com o qual as solicitações são
bloqueado), uma atualização de página simples pode não respeitar a mudança de comportamento. Para garantir que o comportamento
mudança, chame handlerBehaviorChanged()
para limpar o cache na memória. Mas não faça isso
frequentemente; limpar o cache é uma operação muito cara. Você não precisa chamar
handlerBehaviorChanged()
depois de registrar ou cancelar o registro de um listener de eventos.
Carimbos de data/hora
A propriedade timestamp
dos eventos de solicitação da Web só tem consistência interna.
A comparação de um evento com outro fornecerá o deslocamento correto entre eles, mas a comparação
até o horário atual na extensão (via (new Date()).getTime()
, por exemplo) pode
gerar resultados inesperados.
Tratamento de erros
Se você tentar registrar um evento com argumentos inválidos, será gerado um erro de JavaScript. o manipulador de eventos não será registrado. Se um erro for lançado enquanto um evento for tratado ou se uma o manipulador de eventos retornar uma resposta de bloqueio inválida, uma mensagem de erro será registrada no console do Cloud, e o manipulador é ignorado para essa solicitação.
Exemplos
O exemplo abaixo ilustra como bloquear todas as solicitações para www.evil.com
:
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
return {cancel: details.url.indexOf("://www.evil.com/") != -1};
},
{urls: ["<all_urls>"]},
["blocking"]
);
Como essa função usa um manipulador de eventos de bloqueio, ela requer o "webRequest"
, bem como o
"webRequestBlocking"
no arquivo de manifesto.
O exemplo a seguir atinge a mesma meta de maneira mais eficiente, porque as solicitações que não são
segmentadas para www.evil.com
não precisam ser transmitidas para a extensão:
chrome.webRequest.onBeforeRequest.addListener(
function(details) { return {cancel: true}; },
{urls: ["*://www.evil.com/*"]},
["blocking"]
);
O exemplo a seguir mostra como excluir o cabeçalho User-Agent de todas as solicitações:
chrome.webRequest.onBeforeSendHeaders.addListener(
function(details) {
for (var i = 0; i < details.requestHeaders.length; ++i) {
if (details.requestHeaders[i].name === 'User-Agent') {
details.requestHeaders.splice(i, 1);
break;
}
}
return {requestHeaders: details.requestHeaders};
},
{urls: ["<all_urls>"]},
["blocking", "requestHeaders"]
);
Para testar a API chrome.webRequest
,
instale o exemplo webRequest do chrome-extension-samples
repositório de dados.
Tipos
BlockingResponse
Retorna o valor para manipuladores de eventos que têm o argumento "bloqueio" extraInfoSpec aplicado. Permite que o manipulador de eventos modifique solicitações de rede.
Propriedades
-
authCredentials
objeto opcional
Usado apenas como resposta ao evento onAuthRequired. Se definido, a solicitação será feita usando as credenciais fornecidas.
-
senha
string
-
nome de usuário
string
-
-
cancelar
booleano opcional
Se for verdadeiro, a solicitação será cancelada. Isso evita que a solicitação seja enviada. Pode ser usado como uma resposta aos eventos onBeforeRequest, onBeforeSendHeaders, onHeadersReceived e onAuthRequired.
-
redirectUrl
string opcional
Usado apenas como uma resposta aos eventos onBeforeRequest e onHeadersReceived. Se definido, a solicitação original não poderá ser enviada/concluída e, em vez disso, redirecionada para o URL fornecido. Redirecionamentos para esquemas diferentes de HTTP, como
data:
, são permitidos. Os redirecionamentos iniciados por uma ação de redirecionamento usam o método de solicitação original, com uma exceção: se o redirecionamento for iniciado na etapa onHeadersReceived, o redirecionamento será emitido pelo método GET. Os redirecionamentos de URLs com esquemasws://
ewss://
são ignorados. -
requestHeaders
HttpHeaders opcional
Usado apenas como uma resposta ao evento onBeforeSendHeaders. Se definido, a solicitação será feita com esses cabeçalhos de solicitação.
-
responseHeaders
HttpHeaders opcional
Usado apenas como uma resposta ao evento onHeadersReceived. Se definido, presume-se que o servidor respondeu com esses cabeçalhos de resposta. Só retorne
responseHeaders
se você realmente quiser modificar os cabeçalhos para limitar o número de conflitos. Somente uma extensão pode modificarresponseHeaders
para cada solicitação.
FormDataItem
Contém dados transmitidos nos dados do formulário. Para o formulário com URL codificado, ele é armazenado como string se os dados forem uma string utf-8; caso contrário, como ArrayBuffer. Para dados de formulário, é ArrayBuffer. Se form-data representar o upload de arquivos, é uma string com o nome do arquivo, se o nome do arquivo for fornecido.
Enumeração
Buffer de matriz
string
HttpHeaders
Uma matriz de cabeçalhos HTTP. Cada cabeçalho é representado como um dicionário que contém as chaves name
e value
ou binaryValue
.
Tipo
object[]
Propriedades
-
binaryValue
number[] opcional
Valor do cabeçalho HTTP se ele não puder ser representado por UTF-8, armazenado como valores de byte individuais (0 a 255).
-
nome
string
Nome do cabeçalho HTTP.
-
valor
string opcional
Valor do cabeçalho HTTP, se puder ser representado por UTF-8.
IgnoredActionType
Enumeração
"redirecionamento"
"request_headers"
"response_headers"
"auth_credentials"
OnAuthRequiredOptions
Enumeração
"responseHeaders"
Especifica que os cabeçalhos de resposta devem ser incluídos no evento.
"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.
"asyncBlocking"
Especifica que a função de retorno de chamada é tratada de forma assíncrona.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnBeforeRedirectOptions
Enumeração
"responseHeaders"
Especifica que os cabeçalhos de resposta devem ser incluídos no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnBeforeRequestOptions
Enumeração
"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.
"requestBody"
Especifica que o corpo da solicitação deve ser incluído no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnBeforeSendHeadersOptions
Enumeração
"requestHeaders"
Especifica que o cabeçalho da solicitação deve ser incluído no evento.
"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnCompletedOptions
Enumeração
"responseHeaders"
Especifica que os cabeçalhos de resposta devem ser incluídos no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnErrorOccurredOptions
Valor
"extraHeaders"
OnHeadersReceivedOptions
Enumeração
"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.
"responseHeaders"
Especifica que os cabeçalhos de resposta devem ser incluídos no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnResponseStartedOptions
Enumeração
"responseHeaders"
Especifica que os cabeçalhos de resposta devem ser incluídos no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
OnSendHeadersOptions
Enumeração
"requestHeaders"
Especifica que o cabeçalho da solicitação deve ser incluído no evento.
"extraHeaders"
Especifica que os cabeçalhos podem violar o Compartilhamento de recursos entre origens (CORS).
RequestFilter
Um objeto que descreve filtros a serem aplicados a eventos webRequest.
Propriedades
-
tabId
número opcional
-
tipos
ResourceType[] opcional
Uma lista de tipos de solicitação. As solicitações que não corresponderem a nenhum dos tipos serão filtradas.
-
urls
string[]
Uma lista de URLs ou padrões de URL. As solicitações que não corresponderem a nenhum dos URLs serão filtradas.
-
windowId
número opcional
ResourceType
Enumeração
"main_frame"
Especifica o recurso como o frame principal.
"sub_frame"
Especifica o recurso como um subframe.
"stylesheet"
Especifica o recurso como uma folha de estilo.
"script"
Especifica o recurso como um script.
"image"
Especifica o recurso como uma imagem.
"font"
Especifica o recurso como uma fonte.
"object"
Especifica o recurso como um objeto.
"xmlhttprequest"
Especifica o recurso como um XMLHttpRequest.
"ping"
Especifica o recurso como um ping.
"csp_report"
Especifica o recurso como um relatório da Política de Segurança de Conteúdo (CSP).
"media"
Especifica o recurso como um objeto de mídia.
"websocket"
Especifica o recurso como um WebSocket.
"webbundle"
Especifica o recurso como um WebBundle.
"other"
Especifica o recurso como um tipo não incluído nos tipos listados.
UploadData
Contém dados enviados em uma solicitação de URL.
Propriedades
-
bytes
Qualquer opcional
Um ArrayBuffer com uma cópia dos dados.
-
arquivo
string opcional
Uma string com o caminho e o nome do arquivo.
Propriedades
MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
O número máximo de vezes em que handlerBehaviorChanged
pode ser chamado a cada 10 minutos de intervalo sustentado. handlerBehaviorChanged
é uma chamada de função cara que não precisa ser chamada com frequência.
Valor
20
Métodos
handlerBehaviorChanged()
chrome.webRequest.handlerBehaviorChanged(
callback?: function,
)
Precisa ser chamado quando o comportamento dos manipuladores webRequest mudou para evitar tratamento incorreto devido ao armazenamento em cache. Essa chamada de função é cara. Não ligue com frequência.
Parâmetros
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 116 ou versões mais recentesAs promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
Eventos
onActionIgnored
chrome.webRequest.onActionIgnored.addListener(
callback: function,
)
Disparado quando a modificação proposta por uma extensão em uma solicitação de rede é ignorada. Isso acontece em caso de conflito com outras extensões.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
ação
A ação proposta que foi ignorada.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
-
onAuthRequired
chrome.webRequest.onAuthRequired.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnAuthRequiredOptions[],
)
Disparado quando uma falha de autenticação é recebida. O listener tem três opções: fornecer credenciais de autenticação, cancelar a solicitação e exibir a página de erro ou não realizar nenhuma ação em relação ao desafio. Se credenciais de usuário inválidas forem fornecidas, ele poderá ser chamado várias vezes para a mesma solicitação. Somente um dos modos 'blocking'
ou 'asyncBlocking'
precisa ser especificado no parâmetro extraInfoSpec
.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object, asyncCallback?: function) => BlockingResponse | undefined
-
detalhes
objeto
-
desafiante
objeto
O servidor solicitando autenticação.
-
host
string
-
porta
number
-
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
isProxy
booleano
"True" para "Proxy-Authenticate", "false" para "WWW-Authenticate".
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
realm
string opcional
O domínio de autenticação fornecido pelo servidor, se houver.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
responseHeaders
HttpHeaders opcional
Os cabeçalhos de resposta HTTP que foram recebidos junto com essa resposta.
-
planejar
string
O esquema de autenticação, por exemplo, Basic ou Digest.
-
statusCode
number
Chrome 43 ou superiorCódigo de status HTTP padrão retornado pelo servidor.
-
statusLine
string
Linha de status HTTP da resposta ou "HTTP/0.9 200 OK" string para respostas HTTP/0.9 (ou seja, respostas sem uma linha de status) ou uma string vazia se não houver cabeçalhos.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
asyncCallback
função opcional
Chrome 58 ou superiorO parâmetro
asyncCallback
tem esta aparência:(response: BlockingResponse) => void
-
resposta
-
-
retorna
BlockingResponse | indefinido
Se estiver sendo "bloqueado" é especificado no campo "extraInfoSpec" o listener de eventos deverá retornar um objeto desse tipo.
-
-
filtro
-
extraInfoSpec
OnAuthRequiredOptions[] opcional
onBeforeRedirect
chrome.webRequest.onBeforeRedirect.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRedirectOptions[],
)
Disparado quando um redirecionamento iniciado pelo servidor está prestes a ocorrer.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
fromCache
booleano
Indica se essa resposta foi buscada no cache de disco.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
ip
string opcional
O endereço IP do servidor para onde a solicitação foi realmente enviada. Observe que ele pode ser um endereço IPv6 literal.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
redirectUrl
string
O novo URL.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
responseHeaders
HttpHeaders opcional
Os cabeçalhos de resposta HTTP que foram recebidos junto com este redirecionamento.
-
statusCode
number
Código de status HTTP padrão retornado pelo servidor.
-
statusLine
string
Linha de status HTTP da resposta ou "HTTP/0.9 200 OK" string para respostas HTTP/0.9 (ou seja, respostas sem uma linha de status) ou uma string vazia se não houver cabeçalhos.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
-
filtro
-
extraInfoSpec
OnBeforeRedirectOptions[] opcional
onBeforeRequest
chrome.webRequest.onBeforeRequest.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeRequestOptions[],
)
Disparado quando uma solicitação está prestes a ocorrer.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => BlockingResponse | undefined
-
detalhes
objeto
-
documentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycle
extensionTypes.DocumentLifecycle optional
Chrome 106 ou versões mais recentesO ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameType
extensionTypes.FrameType optional
Chrome 106 ou versões mais recentesO tipo de frame em que a solicitação ocorreu.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestBody
objeto opcional
Contém os dados do corpo da solicitação HTTP. Fornecido apenas se extraInfoSpec contiver "requestBody".
-
erro
string opcional
Erros ao receber dados do corpo da solicitação.
-
formData
objeto opcional
Se o método de solicitação for POST e o corpo for uma sequência de pares de chave-valor codificados em UTF8, codificados como multipart/form-data ou application/x-www-form-urlencoded, esse dicionário estará presente e, para cada chave, conterá a lista de todos os valores dessa chave. Se os dados forem de outro tipo de mídia ou se forem malformados, o dicionário não estará presente. Um exemplo de valor deste dicionário é {'key': ['value1', 'value2']}.
-
bruto
UploadData[] opcional
Se o método de solicitação for PUT ou POST e o corpo ainda não tiver sido analisado em formData, os elementos do corpo da solicitação não analisados estarão contidos nessa matriz.
-
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
retorna
BlockingResponse | indefinido
Se estiver sendo "bloqueado" é especificado no campo "extraInfoSpec" o listener de eventos deverá retornar um objeto desse tipo.
-
-
filtro
-
extraInfoSpec
OnBeforeRequestOptions[] opcional
onBeforeSendHeaders
chrome.webRequest.onBeforeSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnBeforeSendHeadersOptions[],
)
Disparado antes do envio de uma solicitação HTTP quando os cabeçalhos da solicitação estão disponíveis. Isso pode ocorrer depois que uma conexão TCP é feita com o servidor, mas antes do envio de qualquer dado HTTP.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => BlockingResponse | undefined
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestHeaders
HttpHeaders opcional
Os cabeçalhos da solicitação HTTP que serão enviados com a solicitação.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
retorna
BlockingResponse | indefinido
Se estiver sendo "bloqueado" é especificado no campo "extraInfoSpec" o listener de eventos deverá retornar um objeto desse tipo.
-
-
filtro
-
extraInfoSpec
OnBeforeSendHeadersOptions[] opcional
onCompleted
chrome.webRequest.onCompleted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnCompletedOptions[],
)
Disparado quando uma solicitação é concluída.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
fromCache
booleano
Indica se essa resposta foi buscada no cache de disco.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
ip
string opcional
O endereço IP do servidor para onde a solicitação foi realmente enviada. Observe que ele pode ser um endereço IPv6 literal.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
responseHeaders
HttpHeaders opcional
Os cabeçalhos de resposta HTTP que foram recebidos junto com essa resposta.
-
statusCode
number
Código de status HTTP padrão retornado pelo servidor.
-
statusLine
string
Linha de status HTTP da resposta ou "HTTP/0.9 200 OK" string para respostas HTTP/0.9 (ou seja, respostas sem uma linha de status) ou uma string vazia se não houver cabeçalhos.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
-
filtro
-
extraInfoSpec
OnCompletedOptions[] opcional
onErrorOccurred
chrome.webRequest.onErrorOccurred.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnErrorOccurredOptions[],
)
Disparado quando ocorre um erro.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação. Esse valor não estará presente se a solicitação for uma navegação de um frame.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
erro
string
A descrição do erro. Essa string não garante a compatibilidade com versões anteriores entre as versões. Não é permitido analisar e agir com base no conteúdo dele.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
fromCache
booleano
Indica se essa resposta foi buscada no cache de disco.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
ip
string opcional
O endereço IP do servidor para onde a solicitação foi realmente enviada. Observe que ele pode ser um endereço IPv6 literal.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
-
filtro
-
extraInfoSpec
OnErrorOccurredOptions[] opcional
onHeadersReceived
chrome.webRequest.onHeadersReceived.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnHeadersReceivedOptions[],
)
Disparado quando os cabeçalhos de resposta HTTP de uma solicitação são recebidos.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => BlockingResponse | undefined
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
responseHeaders
HttpHeaders opcional
Os cabeçalhos de resposta HTTP que foram recebidos com essa resposta.
-
statusCode
number
Chrome 43 ou superiorCódigo de status HTTP padrão retornado pelo servidor.
-
statusLine
string
Linha de status HTTP da resposta ou a mensagem "HTTP/0.9 200 OK" string para respostas HTTP/0.9 (ou seja, respostas sem uma linha de status).
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
retorna
BlockingResponse | indefinido
Se estiver sendo "bloqueado" é especificado no campo "extraInfoSpec" o listener de eventos deverá retornar um objeto desse tipo.
-
-
filtro
-
extraInfoSpec
OnHeadersReceivedOptions[] opcional
onResponseStarted
chrome.webRequest.onResponseStarted.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnResponseStartedOptions[],
)
Disparado quando o primeiro byte do corpo da resposta é recebido. Para solicitações HTTP, isso significa que a linha de status e os cabeçalhos de resposta estão disponíveis.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
fromCache
booleano
Indica se essa resposta foi buscada no cache de disco.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
ip
string opcional
O endereço IP do servidor para onde a solicitação foi realmente enviada. Observe que ele pode ser um endereço IPv6 literal.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
responseHeaders
HttpHeaders opcional
Os cabeçalhos de resposta HTTP que foram recebidos junto com essa resposta.
-
statusCode
number
Código de status HTTP padrão retornado pelo servidor.
-
statusLine
string
Linha de status HTTP da resposta ou "HTTP/0.9 200 OK" string para respostas HTTP/0.9 (ou seja, respostas sem uma linha de status) ou uma string vazia se não houver cabeçalhos.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
-
filtro
-
extraInfoSpec
OnResponseStartedOptions[] opcional
onSendHeaders
chrome.webRequest.onSendHeaders.addListener(
callback: function,
filter: RequestFilter,
extraInfoSpec?: OnSendHeadersOptions[],
)
Disparado pouco antes de uma solicitação ser enviada ao servidor (modificações dos callbacks anteriores onBeforeSendHeaders ficam visíveis no momento em que onSendHeaders é acionado).
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(details: object) => void
-
detalhes
objeto
-
documentId
string
Chrome 106 ou versões mais recentesO UUID do documento que faz a solicitação.
-
documentLifecycleChrome 106 ou versões mais recentes
O ciclo de vida do documento.
-
frameId
number
O valor 0 indica que a solicitação acontece no frame principal. um valor positivo indica o ID de um subframe em que a solicitação acontece. Se o documento de um (sub)frame for carregado (
type
émain_frame
ousub_frame
),frameId
vai indicar o ID desse frame, e não o ID do frame externo. Os IDs de frames são exclusivos em uma guia. -
frameTypeChrome 106 ou versões mais recentes
O tipo de frame em que a solicitação ocorreu.
-
iniciador
string opcional
Chrome 63 ou superiorA origem em que a solicitação foi iniciada. Isso não muda por meio de redirecionamentos. Caso tenha origem opaca, a string "null" será usado.
-
method
string
Método HTTP padrão.
-
parentDocumentId
string opcional
Chrome 106 ou versões mais recentesO UUID do documento pai que contém este frame. Isso não será definido se não houver pai.
-
parentFrameId
number
ID do frame que envolve o frame que enviou a solicitação. Defina como -1 se não houver um frame pai.
-
requestHeaders
HttpHeaders opcional
Os cabeçalhos da solicitação HTTP que foram enviados com essa solicitação.
-
requestId
string
O ID da solicitação. Os IDs de solicitação são exclusivos em uma sessão do navegador. Como resultado, elas podem ser usadas para relacionar diferentes eventos da mesma solicitação.
-
tabId
number
O ID da guia em que ocorre a solicitação. Defina como -1 se a solicitação não estiver relacionada a uma guia.
-
timeStamp
number
É a hora em que esse sinal é acionado, em milissegundos, desde o período.
-
tipo
Como o recurso solicitado será usado.
-
url
string
-
-
-
filtro
-
extraInfoSpec
OnSendHeadersOptions[] opcional