Pour autant que je sache, il n'y a pas d'exposition publique d'API de la page d'accueil / du moteur de recherche par défaut d'un navigateur. Alors, comment Google sait-il afficher cela? Cela ne survient que lorsque Google n'est pas la page d'accueil / moteur de recherche par défaut de mon navigateur.
Je ne peux que supposer qu'ils déduisent de nombreuses variables, telles que le référent. Je n'ai pas réussi à creuser dans le JavaScript compilé de Google. Je ne suis même pas sûr qu'il soit détecté côté client ou côté serveur.
Je suis sur Firefox 44, mais j'ai également vu ces bannières sur Chrome.
javascript
browser
search-engine
webpage
Tennyson H
la source
la source
Réponses:
Simplement, il n'y a aucun moyen de faire cela avec JavaScript car la "recherche par défaut / page d'accueil" est la préférence de l'utilisateur et vous n'y avez pas accès sans l'autorisation de l'utilisateur car ce serait un problème de sécurité / confidentialité.
Ce que Google fait à chaque visite d'un utilisateur est de montrer une annonce promotionnelle avec une icône de fermeture et un bouton Aller avec des instructions sur la façon de la définir comme page d'accueil par défaut. En cliquant sur l'un d'entre eux, il crée 2 cookies afin de vérifier la prochaine fois vos cookies et de faire disparaître les promos. Même lorsque Google est votre page d'accueil et que vous effacez vos cookies, une bannière est toujours là pour promouvoir Google en tant que page d'accueil.
J'ai vérifié cela avec Firefox, pas au courant de Chrome.
la source
OHAI GOOGLE
cookies.Je ne sais pas exactement ce que fait Google, mais ce que je ferais:
Referer
champ:visitedHelpAboutHomePage
lorsque l'utilisateur visite la page "oui, montrez-moi" (peut empêcher les faux négatifs, mais peut également générer des faux positifs)Notez que le "paramètre spécial" se produit dans le scénario "recherche initiée par la boîte de recherche": il y a un paramètre
sourceid
qui signifie probablement "source de recherche".la source
#homepage
n'est cependant pas soumise au serveur, mais peut être disponible pour JavaScript. De plus, je suppose que la page d'accueil n'a pas non plus de référent, n'est-ce pas?Dans mon Firefox (v42), le message "Venez souvent ici?" s'affiche même lorsque Google est défini comme moteur de recherche par défaut.
Dans Safari, j'obtiens une boîte au même endroit qui dit "Une meilleure façon de naviguer sur le Web: Obtenez Google Chrome"
Dans Opera et Chrome, je n'obtiens aucune boîte du tout, même si je change mon moteur de recherche par défaut pour autre chose que Google.
Donc, je pense que tout ce qu'ils font, c'est la détection du navigateur dans JavaScript, à l'aide de l'objet UserAgent.
la source