2017-05-09 60 views
9

我們在我們的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>標記的末尾並未解決問題。

是什麼導致了這種情況,它如何被緩解?

+0

這是否發生在現場服務器上,'localhost'使得這看起來像你正在某種奇怪配置的測試環境中運行這個。一些遠程的東西可能希望從它所鏈接的域運行。既然你完全控制了所有這些混亂的第三方js事物,真正的問題是如果一組錯誤實際上影響頁面上的功能,或者它只是一個滾動錯誤。我們的網站使用一些第三方的東西,他們傾向於發出各種錯誤,但我忽略它們,因爲我無法修復它們的錯誤代碼。 – Lizardx

+0

「我們HTML中的一些分析腳本」 - 我實際上會低估這個問題,因爲你說你正在運行一些未知的東西,再加上分析,然後你問是什麼原因造成的。你必須提供所有的數據,你正在使用的所有工具,可能有人看到這些錯誤附加到一個特定的分析工具,但我總是試圖避免運行多個analtyics第三方js庫,因爲它們都是非常侵入性的,不能有望與其他人打好關係。本地主機也是高度可疑的,它使我認爲這是因爲該工具鏈接到一個域。 – Lizardx

+0

@Lizardx我在開發代碼時正在運行本地服務器。我已經使用Google Analytics和Azure Application Insights進行了更新。 –

回答

0

注意:這不是一個'答案',但太長,不能成爲評論。

同時使用Firefox的Web開發人員工具欄的JavaScript控制檯調試器,Chrome的,我查了一下我們的網頁,其中使用谷歌分析,我相信你可以在很大程度上排除了嫌疑人名單的谷歌分析,他們通常做一個確定的工作與他們的JS 。

你的錯誤也清楚地指向瀏覽器同步,所以這可能是罪魁禍首。然而,你的本地開發網站是可疑的,爲什麼你沒有爲它做一個適當的虛擬主機,而不是使用本地主機?我對瀏覽器同步一無所知,所以我只會注意到這一點,以排除您的情況。

我懷疑你的live站點是以localhost身份運行的,所以你可能想糾正這個問題,以消除可能出現的小差異的可能點。我總是儘量使用任何站點上的一切活動這意味着你永遠不會在網站的實際運行代碼中的任何地方看到本地主機,你會看到該網站是dev或真正的域名,如:http://our-dev-site/或其他。