chrome.webRequest

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:

Ciclo de vida de uma solicitação da Web da perspectiva da API de solicitação da Web

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) e image (uma imagem em um site). Consulte webRequest.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 esquemas ws:// e wss:// 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 modificar responseHeaders para cada solicitação.

FormDataItem

Chrome 66 ou superior

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

Chrome 70 ou superior

Enumeração

"redirecionamento"

"request_headers"

&quot;response_headers&quot;

&quot;auth_credentials&quot;

OnAuthRequiredOptions

Chrome 44 ou superior

Enumeração

&quot;responseHeaders&quot;
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.

&quot;asyncBlocking&quot;
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

Chrome 44 ou superior

Enumeração

&quot;responseHeaders&quot;
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

Chrome 44 ou superior

Enumeração

"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.

&quot;requestBody&quot;
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

Chrome 44 ou superior

Enumeração

&quot;requestHeaders&quot;
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

Chrome 44 ou superior

Enumeração

&quot;responseHeaders&quot;
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

Chrome 79 ou superior

Valor

"extraHeaders"

OnHeadersReceivedOptions

Chrome 44 ou superior

Enumeração

"Blocking"
Especifica que a solicitação é bloqueada até que a função de retorno de chamada retorne.

&quot;responseHeaders&quot;
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

Chrome 44 ou superior

Enumeração

&quot;responseHeaders&quot;
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

Chrome 44 ou superior

Enumeração

&quot;requestHeaders&quot;
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

Chrome 44 ou superior

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.

&quot;script&quot;
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.

&quot;xmlhttprequest&quot;
Especifica o recurso como um XMLHttpRequest.

"ping"
Especifica o recurso como um ping.

&quot;csp_report&quot;
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()

Promessa
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 recentes

    As promessas só têm suporte no Manifesto V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

Eventos

onActionIgnored

Chrome 70 ou superior
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 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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 106 ou versões mais recentes

        O tipo de frame em que a solicitação ocorreu.

      • iniciador

        string opcional

        Chrome 63 ou superior

        A 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 recentes

        O 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 superior

        Có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) 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.

      • Como o recurso solicitado será usado.

      • url

        string

    • asyncCallback

      função opcional

      Chrome 58 ou superior

      O parâmetro asyncCallback tem esta aparência:

      (response: BlockingResponse) => void

    • retorna

      BlockingResponse | indefinido

      Se estiver sendo "bloqueado" é especificado no campo "extraInfoSpec" o listener de eventos deverá retornar um objeto desse tipo.

  • filtro
  • extraInfoSpec

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 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 superior

        A 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 recentes

        O 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 a mensagem "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.

      • Como o recurso solicitado será usado.

      • url

        string

  • filtro
  • extraInfoSpec

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 recentes

        O UUID do documento que faz a solicitação.

      • documentLifecycle
        Chrome 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 ou sub_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
        Chrome 106 ou versões mais recentes

        O tipo de frame em que a solicitação ocorreu.

      • iniciador

        string opcional

        Chrome 63 ou superior

        A 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 recentes

        O 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.

      • 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

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 106 ou versões mais recentes

        O tipo de frame em que a solicitação ocorreu.

      • iniciador

        string opcional

        Chrome 63 ou superior

        A 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 recentes

        O 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.

      • 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

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 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 superior

        A 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 recentes

        O 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 a mensagem "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.

      • 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 recentes

        O 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.

      • Chrome 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 ou sub_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.

      • Chrome 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 superior

        A 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 recentes

        O 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.

      • Como o recurso solicitado será usado.

      • url

        string

  • filtro
  • extraInfoSpec

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 106 ou versões mais recentes

        O tipo de frame em que a solicitação ocorreu.

      • iniciador

        string opcional

        Chrome 63 ou superior

        A 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 recentes

        O 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 superior

        Có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.

      • 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

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 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 superior

        A 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 recentes

        O 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 a mensagem "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.

      • Como o recurso solicitado será usado.

      • url

        string

  • filtro
  • extraInfoSpec

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 recentes

        O UUID do documento que faz a solicitação.

      • Chrome 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 ou sub_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.

      • Chrome 106 ou versões mais recentes

        O tipo de frame em que a solicitação ocorreu.

      • iniciador

        string opcional

        Chrome 63 ou superior

        A 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 recentes

        O 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.

      • Como o recurso solicitado será usado.

      • url

        string

  • filtro
  • extraInfoSpec