49 votes

Google.com et clients1.google.com/generate_204

J'étais à la recherche dans google.com's Nette de l'activité dans firebug juste parce que j'étais curieux et a remarqué une demande de retour "204 No Content."

Il s'avère que l'204 No Content "est principalement destiné à permettre l'entrée pour les mesures à prendre place sans provoquer un changement de l'utilisateur de l'agent actif de vue du document, bien que tout nouveau ou mis à jour de la métainformation DOIT être appliqué au document actuellement dans le manuel de l'agent de la vue active." Quoi que ce soit.

J'ai regardé dans le JS code source et vu que "generate_204" est demandé comme ceci:

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

Pas de déclaration de variable ou d'une assignation à tous.

Ma première idée est qu'il a été utilisé pour vérifier si le Javascript est activé. Mais l' "(nouvelle Image).src='...'" appel est appelée à partir d'un chargé dynamiquement fichier JS externe de toute façon, donc ce serait inutile.

Quelqu'un a une idée de ce que cela pourrait être?

Mise à JOUR

"/generate_204" semble être disponible sur de nombreux services de google/serveurs (par exemple, maps.google.com/generate_204, maps.gstatic.com/generate_204, etc...).

Vous pouvez prendre avantage de cela en pré-chargement de la generate_204 pages pour chaque filiale de google au service de votre application web peut utiliser. Comme Ceci:

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];
    }
};

36voto

Morphius Points 181

J'ai trouvé ce vieux fil de discussion en effectuant une recherche Google sur generate_204 car Android semble l'utiliser pour déterminer si le réseau WLAN est ouvert (la réponse 204 est reçue) fermée (pas de réponse du tout) ou bloquée (la redirection vers le portail captif est présente). Dans ce cas, une notification indique qu'une connexion au WiFi est requise ...

28voto

Matthew Crumley Points 47284

Comme Snukker l'a dit, clients1.google.com est l'origine des suggestions de recherche. J'imagine qu'ils font une demande pour forcer clients1.google.com dans votre cache DNS avant que vous n'en ayez besoin. Ainsi, vous aurez moins de temps de latence lors de la première "vraie" demande.

Google Chrome le fait déjà pour tous les liens sur une page et (je pense) lorsque vous tapez une adresse dans la barre d'adresse. Cela semble être un moyen d’amener tous les navigateurs à faire la même chose.

20voto

tonhozi Points 81

Dans le cas où google Chrome détecte la connexion SSL délais d'attente, des erreurs de certificat, ou à d'autres problèmes qui pourraient être causés par un portail captif (un hôtel wi-fi du réseau, par exemple), Chrome va faire un cookieless demande à http://www.gstatic.com/generate_204 vérifier le code de réponse. Si cette requête est redirigée, google Chrome ouvre la cible de redirection dans un nouvel onglet sur l'hypothèse que c'est une page de connexion. Les demandes pour le portail captif de détection de la page ne sont pas enregistrées.

Police: De Confidentialité Google Chrome Blanc

12voto

Suresh Points 56

Google est l'utilisation de ce pour détecter si l'appareil est en ligne ou dans un portail captif.

Complice, le gestionnaire de connexion pour Chrome OS, tente de détecter les services qui sont à l'intérieur d'un portail captif chaque fois qu'un service de transitions à l'état prêt. Cette volonté d'être dans un portail captif ou d'être en ligne est en fait en essayant de récupérer la page web http://clients3.google.com/generate_204. Ce bien connue, de l'URL est connue pour revenir à une page vide avec un statut HTTP 204. Si, pour une raison quelconque, la page web n'est pas retourné, ou d'une réponse HTTP autres que 204 est reçu, complice des marques de service comme étant dans le portail de l'état.

Plus d'infos: http://www.chromium.org/chromium-os/chromiumos-design-docs/network-portal-detection

5voto

Snukker Points 758

204 réponses sont parfois utilisés en AJAX pour le suivi des clics et de la page de l'activité. Dans ce cas, la seule information d'être transmises au serveur dans la requête get est un cookie et pas d'informations précises dans les paramètres de la demande, de sorte que cela ne semble pas être le cas ici.

Il semble que clients1.google.com le serveur est derrière les suggestions de recherche de google. Lorsque vous visitez http://www.google.comle cookie est transmis à http://clients1.google.com/generate_204. C'est peut-être pour le démarrage de certains type de session sur le serveur? Quelle que soit l'utilisation, je doute que c'est un très standard.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X