Google.com e clients1.google.com/generate 204

Estava a investigar google.com a atividade da rede em firebug só porque eu estava curioso e notei que um pedido estava retornando " 204 sem conteúdo."

verifica-se que um 204 sem conteúdo "destina-se principalmente a permitir a entrada de acções sem causar uma alteração na vista do documento activo do agente de utilizador, embora qualquer nova ou actualizada mensaformação deva ser aplicada ao documento actualmente na vista activa do agente de utilizador."Tanto faz.

Investiguei o JS. código fonte e saw que" generate_204 " é solicitado assim:

(new Image).src="http://clients1.google.com/generate_204"

nenhuma declaração/atribuição variável.

a minha primeira ideia é que estava a ser usada para localizar se o Javascript está activo. Mas a " (nova imagem).origem='...'"chamada é chamada de um arquivo JS externo carregado dinamicamente de qualquer maneira, de modo que seria inútil.

Alguém tem alguma ideia de qual seria o objectivo?

actualizar

" / generate_204 " parece estar disponível em muitos google serviços / servidores (por exemplo, maps.google.com/generate_204, maps.gstatic.com/generate_204, etc...).

você pode tirar partido disso, pré-obtendo as páginas generate_204 para cada serviço de propriedade do google que o seu aplicativo web possa usar. Assim:

window.onload = function(){
    var two_o_fours = [
        // google maps domain ...
        "http://maps.google.com/generate_204",

        // google maps images domains ... 
        "http://mt0.google.com/generate_204",
        "http://mt1.google.com/generate_204",
        "http://mt2.google.com/generate_204",
        "http://mt3.google.com/generate_204",

        // you can add your own 204 page for your subdomains too!
        "http://sub.domain.com/generate_204"
    ];
    for(var i = 0, l = two_o_fours.length; i < l; ++i){
        (new Image).src = two_o_fours[i];
    }
};
Author: David Murdoch, 2010-01-01

11 answers

Como o Snukker disse, clients1.google.com é de onde vêm as sugestões de busca. O meu palpite é que eles fazem um pedido para forçar clients1.google.com no seu cache DNS Antes de precisar dele, então você terá menos latência no primeiro pedido "real".

O Google Chrome já faz isso para quaisquer links de uma página, e (penso) quando você digita um endereço na barra de localização. Isto parece uma maneira de fazer todos os navegadores fazerem a mesma coisa.

 25
Author: Matthew Crumley, 2010-01-01 19:21:32

Eu encontrei este tópico antigo enquanto o google ' ing para generate_204 como Android parece usar isso para determinar se a wlan está aberta (resposta 204 é recebida) fechada (nenhuma resposta de todo) ou bloqueada (redirecionar para o portal cativo está presente). Nesse caso, é apresentada uma notificação de que é necessário um log-in para Wi-Fi...enter image description here

 34
Author: Morphius, 2017-12-12 19:33:14

No caso de o Chrome detectar os tempos-limite de ligação SSL, Certificado erros ou outros problemas de rede que possam ser causados por uma rede cativa portal (uma rede Wi-Fi do hotel, por exemplo), o Chrome fará um pedido não publicado para http://www.gstatic.com/generate_204 e verificar o código de resposta. Se esse pedido for redireccionado, o Chrome irá abrir o redirecione o alvo em uma nova página na suposição de que é uma página de login. Pedidos de detecção de portal cativo a página não está registada.

Tipo De Letra: Google Chrome Privacy Whitepaper

 17
Author: tonhozi, 2016-01-26 14:15:41

O Google está a usar isto para detectar se o dispositivo está online ou em portal Cativo.

O Shill, o Gestor de ligações do Chromium OS, tenta detectar serviços que se encontram num portal cativo sempre que um serviço transita para o estado pronto. Esta determinação de estar em um portal cativo ou estar on-line é feita através da tentativa de recuperar a página web http://clients3.google.com/generate_204 . este URL bem conhecido é conhecido por devolver uma página vazia com um Situação http 204. Se por qualquer razão a página web não for devolvida, ou uma resposta HTTP diferente de 204 é recebida, então shill marca o serviço como estando no estado do portal.

Aqui está a explicação relevante do Google Chrome Privacy Whitepaper:

Caso o Chrome detecte tempos de conexão SSL, erros de certificado ou outros problemas de rede que possam ser causados por um portal cativo (uma rede Wi-Fi de um hotel, por exemplo), o Chrome fará um pedido não publicado para http://www.gstatic.com/generate_204 e verifica o código de resposta. Se esse pedido for redirecionado, o Chrome abrirá o alvo redirecionado em uma nova página na suposição de que é uma página de login. Os pedidos para a página de detecção de portal cativo não estão registados.

Mais informações: http://www.chromium.org/chromium-os/chromiumos-design-docs/network-portal-detection

 9
Author: Suresh, 2015-12-03 09:17:49

204 respostas são por vezes usadas em AJAX para cliques de pista e actividade de página. Neste caso, a única informação que está sendo passada para o servidor no pedido get é um cookie e não Informação específica nos parâmetros do pedido, então isso não parece ser o caso aqui.

Parece que ... clients1.google.com é o servidor por trás das sugestões de pesquisa do google. Quando visitar http://www.google.com , o biscoito é passado para http://clients1.google.com/generate_204 talvez. isto é para iniciar algum tipo de sessão no servidor? Seja qual for o uso, duvido que seja um uso muito padrão.
 5
Author: Snukker, 2010-01-01 19:09:37

Com o enorme mandato do google para parar tanto o spam como o raspamento da sua base de dados de pesquisa, creio que isto faz parte do esforço para rastrear bots, etc.

Um pseudo anti-bot simples pode ser assim.
On GET (google.*) Save RemoteEndPoint
{
    If RemoteEndPoint GETs (clients1.google.com/generate_204) Then
        Set botAlert_stage1 = false;
    Else
        Set botAlert_stage1 = true;
    End If
}

Eu também acredito que o mais recente 'theme' do Google frontpage é também uma nova ferramenta para ajudar com a atividade anti spam/bot.

** Nota ** ipv6.google.com inclui também esta medida.

Só o meu infundado, sem provas.
 3
Author: divinci, 2010-01-07 12:47:39
Este documento explica:

Http://docs.lib.purdue.edu/cgi/viewcontent.cgi?article=1417&context=ecetr&sei-redir=1

(procurar pelo generate204)

Secção relevante:

Entre os diferentes objectos, uma função javascript acciona um pedido generate204 enviado para o servidor de vídeo que é suposto servir o vídeo. Isto inicia o pré-Vetch de vídeo, que tem dois objetivos principais: primeiro, obriga o cliente a executar o Resolução DNS do nome do servidor de vídeo. Em segundo lugar, obriga o cliente a abrir uma conexão TCP para o servidor de vídeo. Ambos ajudam a acelerar a fase de download de vídeo.

Além disso, o pedido generate204 tem exatamente o mesmo formato e opções do pedido de download de vídeo real, de modo que o servidor de vídeo é eventualmente avisado que um cliente irá baixar esse vídeo muito em breve. Note que o servidor de vídeo responde com uma resposta 204 No Content, como implícito pelo comando, e nenhum conteúdo de vídeo é baixado até agora.

 3
Author: motobói, 2014-03-10 14:29:02
Encontrei este post no blog que explica que é usado para gravar cliques. Sem a palavra oficial do Google poderia ser usado qualquer número de coisas.

Http://mark.koli.ch/2009/03/howto-configure-apache-to-return-a-http-204-no-content-for-ajax.html

 2
Author: digitalsanctum, 2010-01-01 19:45:23

Muitas aplicações acedem a este URL para determinar se têm uma ligação que só leva a um portal cativo.

A ideia é que qualquer portal cativo pensa que este é um site "normal", e depois redireciona-o para o site do portal, que é devolvido com um status de 200. Se um aplicativo tenta acessar qualquer site normal, ele é confrontado com uma resposta totalmente inesperada e pode ter problemas para descobrir o que está errado. No entanto, com esta URL é fácil: se você tiver status 200, você está dentro de um portal cativo, e você pode dizer ao seu usuário para fazer alguma coisa sobre isso (normalmente, entre no portal usando um navegador, ou desligar Wi-Fi e contar com 3G, se eles estão usando um telefone). Se você tiver o status 204, você se conectou ao Google, então sua aplicação está realmente conectada à internet.

A Microsoft e a Apple utilizam uma abordagem ligeiramente diferente; ambas têm alguns URLs que devolvem uma mensagem de texto muito específica com um status 200, por isso, em vez de acederem ao Url do Google você pode, por exemplo, ir para "captive.apple.com" e verifique para status 200 com data = "sucesso" e nada mais. Se você obter status 200 e não exatamente esses dados, então você está novamente em um portal cativo.

 2
Author: gnasher729, 2016-06-06 09:00:44
O gerador 204 pode estar a carregar dinamicamente as sugestões dos critérios de busca. Como posso ver no meu programa de teste de carga, isto é aparentemente responsável por cada chamada de servidor de cada vez que o utilizador escreve no campo de texto
 0
Author: Kranthi, 2010-07-27 07:34:32

Bem, eu tenho estado a olhar para isso por algumas vezes e resultou que o Google logs referer é de onde eles vêm primeira vez que visita o google.com por ex; controlar com o Google Chrome eu tenho 90% de adivinhar que a sua para Log Referers, talvez User-Agent estatísticas bem conhecida quando o Google lançar a sua lista de padrões de uso do navegador:

Cabeçalhos De Resposta

  • Teor-Comprimento: 0
  • Content-Type: text / html
  • Data: Sex, 21 de Maio de 2010 17: 06: 24 GMT
  • servidor: GFE / 2, 0

Aqui "Referer" sob "^Cabeçalhos de Solicitação" mostra Googles estatísticas que muitas pessoas vêm de Microsoft.com, também analisando a palavra "Janelas 7" para ajude-me a focar no Windows 7 nas minhas pesquisas seguintes essa sessão

//Steven

 -1
Author: Steven, 2016-04-24 22:21:03