Ich erstelle eine Web-App und verwende Google Analytics (Analytics.js) für Analytics. Ich habe kürzlich festgestellt, dass die Analyse in Chrome nicht ordnungsgemäß funktioniert.
Ich lade Analytics mit dem Standard-Code-Snippet in ein separates Modul und füge es über requirejs ein. Ich habe überprüft, ob dieses Skript wie erwartet ausgeführt wird und das Analyse-Snippet ausführt.
Wenn ich den Netzwerkverkehr in Firefox überprüfe, kann ich feststellen, dass das Analyseskript wie erwartet von Google geladen wird (HTTP 200-Antwort):
Wenn ich jedoch genau dieselbe Seite in Chrome ausführe, wird eine HTTP 307-Antwort angezeigt, die auf ungefähr: leer verweist, und Analytics wird nicht ausgeführt:
Wenn ich die Analyse-URL jedoch direkt in die Chrome-Adressleiste einfüge, wird das Skript gefunden. Irgendwelche Ideen, was hier los ist oder wie man es behebt?
cdn.shopify.com
werden in HTTPS konvertiert. Ich sehe keineDELEGATE_INFO
und so. Danke mein Herr!In meinem Fall war der Grund für die 307-Weiterleitung prosaischer. Aus Gewohnheit des Verwendens protokoll relativen URLs , habe ich das Protokoll aus der URL in dem Einbettungs Skript des Google Universal Analytics entfernt, ändert
https://www.google-analytics.com/analytics.js
an//www.google-analytics.com/analytics.js
.Zum Beispiel ( versuchen Sie dies nicht zu Hause ):
Dies ist nicht ratsam, da Google anscheinend die Skript- und Tracking-Anfragen nur über https bereitstellt. Das Entfernen des Protokolls führt also zu einer Umleitung sowohl beim ersten Einbetten des Skripts als auch bei jeder (!) Nachfolgenden Verfolgungsanforderung. Darüber hinaus wird diese Technik , wie von Paul Irish in einem Update seines kanonischen Beitrags über protokollbezogene URLs angegeben , nicht mehr empfohlen oder hat tatsächlich Vorteile:
quelle
In meinem Fall habe ich UBlock Origin in meinem Browser aktiviert. Sobald die Verbindung getrennt oder der Standort autorisiert wurde, wurden die internen Umleitungen gestoppt
quelle