I'm building a web app and using Google Analytics (analytics.js) for analytics. I recently noticed that analytics aren't working properly in Chrome.
I'm loading analytics using the standard code snippet in a separate module and included via requirejs. I've verified that this script runs as expected and executes the analytics snippet.
When I inspect network traffic in Firefox, I can see that the analytics script is loaded from Google as expected (HTTP 200 response):
However, when I run the exact same page in Chrome, I get an HTTP 307 response pointing to about:blank, and analytics does not run:
However, if I paste the analytics URL directly into the Chrome address bar, the script is found. Any ideas what's going on here, or how to fix it?
307 Internal Redirect with
Non-Authorative-Reason: Delegate indicates that the request was intercepted and modified (redirected) by a Chrome extension via the webRequest or declarative webRequest extension APIs.
You can find out which extension triggered the redirect as follows:
chrome://net-internals/#eventstab and look for a URL_REQUEST matching your request (you can use the searchbox to filter the search).
t=7910 [st=0] +REQUEST_ALIVE [dt=6] t=7910 [st=0] +URL_REQUEST_DELEGATE [dt=5] t=7910 [st=0] DELEGATE_INFO [dt=5] --> delegate_info = "extension [Name of extension]" t=7915 [st=5] CHROME_EXTENSION_REDIRECTED_REQUEST --> extension_id = "ebmlimjkpnhckbaejoagnjlgcdhdnjlb" t=7915 [st=5] -URL_REQUEST_DELEGATE t=7915 [st=5] +URL_REQUEST_START_JOB [dt=1] --> load_flags = 339804160 (BYPASS_DATA_REDUCTION_PROXY | MAYBE_USER_GESTURE | REPORT_RAW_HEADERS | VERIFY_EV_CERT) --> method = "GET" --> priority = "LOW" --> url = "https://www.google-analytics.com/analytics.js" t=7915 [st=5] URL_REQUEST_REDIRECT_JOB --> reason = "Delegate" t=7915 [st=5] URL_REQUEST_FAKE_RESPONSE_HEADERS_CREATED --> HTTP/1.1 307 Internal Redirect Location: about:blank Non-Authoritative-Reason: Delegate
In this log sample, an extension with name "[Name of extension]" and extension ID "ebmlimjkpnhckbaejoagnjlgcdhdnjlb" redirected the request. After finding the extension name and/or ID, you can visit
chrome://extensions and disable or remove the extension that modified the request.