Forum Programmation.web Code tiers envahissant dans des pages web

Posté par (page perso) .
4
7
mar.
2011

Salut à tous,

Depuis quelques jours j'ai décidé d'empêcher les grandes méchantes sociétés de me pister sur le web dès lors que je ne suis pas sur leurs sites. J'ai donc bloqué les domaines de FB en dehors de FB.

Et maintenant je vois du code google sur le site d'un grand quotidien français pointant vers ici et et ce code :

if ( google && google.loader && google.loader.ClientLocation && started == 0)
{
   started = 1;
   var latlng = '(' + google.loader.ClientLocation.latitude + ',' + google.loader.ClientLocation.longitude + ')';

   geocoder = new GClientGeocoder();
   geocoder.getLocations( latlng, function(addresses) {
      if( 200 == addresses.Status.code)
      {
         for ( i in addresses.Placemark)
         {
            if ( addresses.Placemark[i].AddressDetails && addresses.Placemark[i].AddressDetails.Accuracy >= 5)
            {
               if ( addresses.Placemark[i].AddressDetails.Country && 'FR' == addresses.Placemark[i].AddressDetails.Country.CountryNameCode)
               {
                  var num_dept = addresses.Placemark[i].AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode.PostalCodeNumber;
                  //var nom_dept = addresses.Placemark[i].AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.SubAdministrativeAreaName;

                  if (num_dept.length >= 5) {
                     num_dept = num_dept.substr(0,2);
                  }
               }
            }
         }

         if ( num_dept)
         {
            var type_bloc = $('input#typeBlocImmobilier').val();

            var url_bloc = '';
            if ( 'service' == type_bloc) {
               url_bloc = "/immobilier/service/" + num_dept + ".js";
            } else if ( 'article' == type_bloc) {
               url_bloc = "/immobilier/article/" + num_dept + ".js";
            } else {
               url_bloc = "/immobilier/" + num_dept + ".js";
            }

            $.ajax({
               type: "GET",
               url: url_bloc,
               dataType: 'json',
               timeout: 3000,
               success: function(obj) {
                  if ( obj.html != '' && typeof obj.html != 'undefined') {
                     $('#immobilierBlockWrapper').html(obj.html);
                  }
               },
               error: function() { }
            });
         }
      }
   });
}

Avant d'essayer de bloquer google en dehors de google, j'aimerais bien savoir de quoi il s'agit (et surtout quelle utilisation ils peuvent en faire). Mais en regardant le code ça m'a l'air assez illisible... vous auriez une idée du contenu ?

Merci d'avance !

BBK

PS J'avais déjà remarqué que je récupérais des cookies google un peu partout sur le web, mais c'est une autre histoire...

PS2 Je songe à essayer polipo pour bloquer ce genre de code tiers. Des retours d'expérience ?

  • # géoloc

    Posté par (page perso) . Évalué à 3.

    A vue de nez, le code récupère le numéro de département de l'utilisateur (à partir d'une géolocalisation de son IP), et envoie une requête vers /immobilier/NN (ou /immobilier/service/NN ou /immobilier/article/NN) où NN est le numéro de dept.

    La réponse de cette requête est alors injectée dans l'élément HTML qui a l'id="immobilierBlockWrapper".

  • # Google Maps

    Posté par . Évalué à 2.

    Salut,

    c'est lié à Google Maps. Ca utilise l'API js de geocodage. Le truc récupère un géocode en argument (ClientLocation) et cherche les adresses correspondantes pour récupérer le numéro de département. Vu que ça va chercher dans "/immobilier/" pour afficher quelque chose dans dans un élément appelé "typeBlocImmobilier" je suppose que tu dois avoir sur la page des annonces immobilières. Si tu t'en fous tu peut bloquer sans problème.

  • # request policy

    Posté par (page perso) . Évalué à 9.

    Sinon, pour whitelister les requêtes d'un site à un autre il y a l'extension RequestPolicy de Firefox : https://addons.mozilla.org/en-US/firefox/addon/requestpolicy/ qui par défaut bloque les scripts, images, CSS... des sites d'un domaine différent de celui visité.

    • [^] # Re: request policy

      Posté par . Évalué à 2.

      Il y a aussi noscript, mais il me semble moins efficace, car via une ressource comme les images ou les CSS il est possible d'obtenir des informations.

      Merci je ne connaissais pas cette extension. :)

      Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)

      • [^] # Re: request policy

        Posté par . Évalué à 2.

        les deux sont des marteaux-pilons pour écraser des mouches, enfin ici des web bugs et autres trucs inutiles

        le choix (par rapport à AdBlock aussi, ou la solution ancestrale en 127.0.0.1) se fera en fonction du degré d'énervement provoqué par des sites tiers et autres bouts de merde qu'on retrouve partout partout partout partout partout

        • [^] # Re: request policy

          Posté par (page perso) . Évalué à 1.

          Mais la "solution ancestrale" ne permet que de bloquer entièrement un site non ? Ça ne permet pas de bloquer seulement le code d'un site tiers ?

          • [^] # Re: request policy

            Posté par . Évalué à 2.

            en effet, et c'est contourné par des chieurs comme xiti qui ont des centaines de noms de machine en log(une lettre)(un nombre à 1 2 ou 3 chiffres. pour l'instant)

            dans cet exemple adblock permet des regexp pour des filtres plus efficaces, mais a le défaut de faire du blacklist. le whitelist cai mieux mais plus chiant à mettre en place au départ

    • [^] # Re: request policy

      Posté par (page perso) . Évalué à 1.

      Je ne connaissais pas cette extension, et il semble effectivement que ça correspond à mon besoin. Malheureusement en ce moment j'utilise chromium, et je cherche une solution compatibles avec tous les navigateurs standards. Adblock est un bon début, mais c'est aussi pour ça que je pense me tourner vers polipo pour que ça ne dépende plus du tout de mon navigateur.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.