我正在构建一个网络应用程序并使用 Google Analytics (analytics.js) 进行分析。我最近注意到 Chrome 中的分析功能无法正常工作。
我使用单独模块中的标准代码片段加载分析并通过 requirejs 包含。我已验证该脚本是否按预期运行并执行分析片段。
当我在 Firefox 中检查网络流量时,我可以看到分析脚本是按预期从 Google 加载的(HTTP 200 响应):
但是,当我在 Chrome 中运行完全相同的页面时,我收到指向 about:blank 的 HTTP 307 响应,并且分析不运行:
但是,如果我将分析 URL 直接粘贴到 Chrome 地址栏中,则会找到该脚本。您知道这里发生了什么,或者如何解决它吗?
307 Internal Redirect
with Non-Authorative-Reason: Delegate
表示该请求被 Chrome 扩展程序拦截并修改(重定向)网络请求 https://developer.chrome.com/extensions/webRequest or 声明式网络请求 https://developer.chrome.com/extensions/declarativeWebRequest扩展 API。
您可以按如下所示找出哪个扩展触发了重定向:
- Visit
chrome://net-internals/#events
- 触发请求(谷歌分析,在你的情况下)。
- 返回到
chrome://net-internals/#events
选项卡并查找与您的请求匹配的 URL_REQUEST(您可以使用搜索框来过滤搜索)。
- 单击该条目可在右侧显示日志。您将看到扩展名称、扩展 ID 和有关请求的其他信息:
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
在此日志示例中,名称为“[扩展名]”和扩展 ID“ebmlimjkpnhckbaejoagnjlgcdhdnjlb”的扩展重定向了请求。找到分机名称和/或 ID 后,您可以访问chrome://extensions
并禁用或删除修改请求的扩展。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)