Was meint Google hier mit "Diesen Code nicht kopieren und einfügen"?

12

Hier ist ein Auszug aus dem Code der Recaptcha-API von Google ( https://www.google.com/recaptcha/api.js ):

/* PLEASE DO NOT COPY AND PASTE THIS CODE. */
(function() {
    if (!window['___grecaptcha_cfg']) { 
        window['___grecaptcha_cfg'] = {}; 
    };
    if (!window['___grecaptcha_cfg']['render']) { 
        window['___grecaptcha_cfg']['render'] = 'onload'; 
    };
    window['__google_recaptcha_client'] = true;
    var po = document.createElement('script'); 
    po.type = 'text/javascript'; 
    po.async = true;
    po.src = 'https://www.gstatic.com/recaptcha/api2/r20160314182818/recaptcha__it.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(po, s);
})();

Warum empfiehlt Google, diesen Code nicht zu kopieren und einzufügen? Liegt es daran, dass sie Tracking-Informationen verlieren würden?

Ich denke, dass der Code ein Skript auf der Seite einfügt. Um eine andere Verbindung zu vermeiden, ist es hilfreich, den Code direkt zu kopieren und einzufügen. Ist das ok?

CastenettoA
quelle
12
Wenn ich raten würde, würde ich sagen: "Anstatt diesen Code in Ihre Seite einzufügen, geben Sie ihn über die API-URL ein, damit Ihre Seite die Änderungen automatisch aufnimmt, wenn wir sie ändern."
Robert Harvey
2
Es liegt etwas Ironie in Ihnen, den Code hier zu kopieren und einzufügen
Brad Thomas

Antworten:

25

Beachten Sie, dass es sich bei der po.srcZeile r20160314182818um einen Zeitstempel handelt. In diesem Fall erhalten Sie wahrscheinlich die Version, die am 14.03.2016 um 18:28:18 Uhr bereitgestellt wurde.

Ich vermute, dass das itBit bedeutet, dass Sie die italienische Version erhalten, was bedeutet, dass Sie eine Version erhalten, api.jsdie auf Ihrem physischen Standort basiert. In Ihrem Profil wird erwähnt, dass Sie Italiener sind, daher habe ich dies als Bestätigung genommen.

Beachten Sie, dass diese Zeile wie folgt aussieht, wenn ich dem obigen Link aus Kalifornien folge:

 po.src = 'https://www.gstatic.com/recaptcha/api2/r20160314182818/recaptcha__en.js'

Dies bedeutet im Allgemeinen, dass Google Änderungen an dieser API sehr häufig bereitstellt (da die bereitgestellte Version nur neun Tage alt ist) und auf dem Standort des Nutzers basiert. Dies ist wahrscheinlich darauf zurückzuführen, dass Captchas ein direktes Ziel für das Reverse Engineering sind und von Personen automatisiert werden sollen, welche Prozesse das Captcha schützt, und dass Captchas möglicherweise kulturell wichtige Merkmale aufweisen.

Wenn Sie diesen Code kopieren und einfügen, bedeutet dies:

  1. Sie verwenden eine eingefrorene Codebasis und profitieren daher nicht von Änderungen, die Google möglicherweise vornimmt.
  2. Sie zwingen Benutzer weltweit dazu, eine für ein bestimmtes Gebietsschema bestimmte Version zu verwenden. Vielleicht haben Ihre japanischen Benutzer Probleme mit Captchas, die für Italiener entwickelt wurden.
  3. Wenn Google beschließt, diese bestimmte Revision zu entfernen, wird Ihr Code vollständig beschädigt.

Wenn Sie eine API verwenden, ist es sehr wichtig, sich immer an die öffentliche API zu halten und aus solchen Gründen niemals etwas Privates zu verwenden.

Gort den Roboter
quelle