BrowserSync与分析脚本导致错误

Sco*_*y H 10 javascript analytics google-analytics brunch browser-sync

我们的HTML中包含Google Analytics和Azure Application Insights分析脚本,包括Google Analytics.他们在<script>标签中<head>.当我们使用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.

并且每隔几秒重复设置此错误:

选项http:// localhost:3000/browser-sync/socket.io /?EIO = 3&transport = polling&t = 1494358572782-5 400(错误请求)

选项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 Origin阻止它们会使它工作得很好.

我想知道在注入Browsersync标签之前是否与这些脚本标签有关(紧接在<body>标签内部,请参阅文档).但将它们移动到<body>标记的末尾并没有解决问题.

造成这种情况的原因是什么?如何减轻这种影响?

Liz*_*rdx 1

注意:这不是“答案”,但太长,无法作为评论。

使用 Firefox Web 开发人员工具栏的 javascript 控制台调试器和 Chrome 的,我检查了我们的页面,这些页面使用谷歌分析,我相信你可以在很大程度上将谷歌分析从可疑列表中排除,他们通常用他们的 js 做得很好。

您的错误也都清楚地指向浏览器同步,所以这可能是罪魁祸首。然而,您的本地开发站点值得怀疑,为什么您不为其创建合适的虚拟主机,而不使用 localhost?我对浏览器同步一无所知,所以我只是注意到这一点以排除您的情况的可能性。

我怀疑您的实时站点是否作为本地主机运行,因此您可能想要纠正该问题,以消除可能出现细微差异的可能点。我总是尝试在我所做的任何站点上的所有内容上使用尽可能接近实时生产的内容,这将意味着您永远不会在网站实际运行代码中的任何地方看到本地主机,您会看到网站的开发或真实域名,例如:http://our-dev-site/或其他名称。