Frequência de solicitações

Este documento se aplica aos seguintes métodos:

  • API Update (v4): fullHashes.find
  • API Update (v4): threatListUpdates.fetch
  • Solicitações de atualização

    Para evitar a sobrecarga do servidor e aproveitar a proteção ideal, a API Update (v4) impõe intervalos de tempo para a frequência com que um cliente pode enviar solicitações ao servidor da Navegação segura para realizar verificações de URL (fullHashes.find). ou atualizar o banco de dados local (threatListUpdates.fetch).

    A solicitação inicial de dados deve acontecer em um intervalo aleatório entre 0 e 1 minuto após a cliente inicia ou acorda. As solicitações subsequentes só podem acontecer depois que o duração mínima de espera ou O limite de tempo do modo de espera foi observados.

    Duração mínima de espera

    Tanto o fullHashes.find response e Resposta threatListUpdates.fetch têm um campo minimumWaitDuration que os clientes precisam obedecer.

    Se o campo minimumWaitDuration não estiver definido na resposta, os clientes poderão atualizar com a frequência que quiser e enviar quantas solicitações threatListUpdates ou fullHashes forem necessárias o que eles querem.

    Se o campo minimumWaitDuration estiver definido na resposta, os clientes não poderão são atualizados com mais frequência do que a duração da espera. Por exemplo, se uma resposta fullHashes contiver uma duração mínima de espera de 1 hora, o cliente não poderá enviar solicitações fullHashes até que essa hora tenha passado, mesmo que o usuário esteja visitando um URL com um prefixo de hash que corresponde ao local no seu banco de dados. Os clientes podem atualizar com menos frequência do que a duração mínima de espera, mas esse podem afetar negativamente a proteção.)

    Modo de retirada

    A espera automática se aplica ao fullHashes.find response e threatListUpdates.fetch.

    Clientes que recebem uma resposta HTTP com falha (ou seja, qualquer código de status HTTP diferente 200 OK) precisa entrar no modo de espera. No modo de espera, os clientes precisam aguardar o tempo calculado antes de emitir outra solicitação ao servidor.

    Os clientes precisam usar a seguinte fórmula para calcular a duração do tempo de espera:

    MIN((2N-1 * 15 minutes) * (RAND + 1), 24 hours)

    N corresponde ao número de solicitações consecutivas e malsucedidas realizadas pelo cliente (começando com N=1 após a primeira solicitação malsucedida). RAND é um número aleatório entre 0 e 1 que precisa ser selecionado após cada atualização malsucedida.

    Quando um cliente recebe uma resposta HTTP bem-sucedida, ele deve sair do modo de espera e seguir a duração mínima de espera especificado acima.