我们在我们的HTML中包含Google Analytics和Azure Application Insights分析脚本,其中包括Google Analytics。他们在<head>
的<script>
标签中。由于我们使用早午餐作为构建系统,因此当我们使用Browsersync进行观看时,特别是使用浏览器同步早午餐时,它们会导致错误。在看,但是,这种错误是打印到控制台两次(有趣的是,我们有两个分析代码):带分析脚本导致错误的BrowserSync
的XMLHttpRequest无法加载http://localhost:3000/browser-sync/socket.io/?EIO=3&transport=polling&t=1494358571902-4&sid=rhGMlOFa_MbRrYbLAAAD。预检响应中的Access-Control-Allow-Headers不允许请求标头字段x-ms-request-id。
,但此错误重复设定每隔几秒钟:
OPTIONS http://localhost:3000/browser-sync/socket.io/?EIO=3&transport=polling&t=1494358572782-5 400(错误请求)
OPTIONS http://localhost:3000/browser-sync/socket.io/?EIO=3&transport=polling&t=1494358572782-5 400(错误请求)
的XMLHttpRequest无法加载http://localhost:3000/browser-sync/socket.io/?EIO=3&transport=polling&t=1494358572782-5。预检响应具有无效的HTTP状态码400
我相当肯定这些分析脚本是造成问题的原因是uBlock地阻止他们使得它的工作就好了。
我想知道它是否与这些脚本标记在浏览器同步标记注入之前(立即在<body>
标记内,请参阅documentation)有关。但将它们移动到<body>
标记的末尾并未解决问题。
是什么导致了这种情况,它如何被缓解?
这是否发生在现场服务器上,'localhost'使得这看起来像你正在某种奇怪配置的测试环境中运行这个。一些远程的东西可能希望从它所链接的域运行。既然你完全控制了所有这些混乱的第三方js事物,真正的问题是如果一组错误实际上影响页面上的功能,或者它只是一个滚动错误。我们的网站使用一些第三方的东西,他们倾向于发出各种错误,但我忽略它们,因为我无法修复它们的错误代码。 – Lizardx
“我们HTML中的一些分析脚本” - 我实际上会低估这个问题,因为你说你正在运行一些未知的东西,再加上分析,然后你问是什么原因造成的。你必须提供所有的数据,你正在使用的所有工具,可能有人看到这些错误附加到一个特定的分析工具,但我总是试图避免运行多个analtyics第三方js库,因为它们都是非常侵入性的,不能有望与其他人打好关系。本地主机也是高度可疑的,它使我认为这是因为该工具链接到一个域。 – Lizardx
@Lizardx我在开发代码时正在运行本地服务器。我已经使用Google Analytics和Azure Application Insights进行了更新。 –