【IE11請求中止】 XMLHttpRequest: 網路錯誤 0x2ef3的意外出現
BUG現象
今天排查BUG遇到一個有趣的BUG,測試的截圖顯示
這個BUG只在IE11下出現。
BUG原因
這個問題的原因是keep-alive機制引起。
當瀏覽器在向一個網址發起請求時,會建立一個tcp/ip連線,之後發起的請求會複用這個連線。
但是這個連線有兩個限制,就是連線超時時間和最大連線次數,超過了就會斷開,下次再請求這個地址,會重新建立一個新的ttcp/ip連線。
在chrome和火狐下每次請求都會去驗證這個tcp/ip連線是否有效,但是IE11不會,也就是說在臨界點的時候,IE11去請求的話,此時未超時,那麼還會複用原來的tcp/ip連線,但是此時服務端判斷已經超時,那麼就會廢棄掉這個tcp/ip連線。
此時的這個請求就會出現BUG中那樣的網路錯誤0x2ef3。
BUG解決方案
這個錯誤難以重現,並且不是程式碼的問題。
如果想規避這個錯誤,可以在服務端關閉keep-alive,但是客戶端和服務端每次請求都需要建立一個tcp/ip連線,很顯然不能因噎廢食。
在網上看了一些人的解決辦法是說加大timeout的時間,不過只要在那個超時的臨界點發出這個請求還是會出現這個問題。
也就是說到最後,最好的解決方案:
為了解決老闆:加大timeout,假裝解決了這個問題。
為了不再看到這個BUG:倡導別用IE。
相關推薦
【IE11請求中止】 XMLHttpRequest: 網路錯誤 0x2ef3的意外出現
BUG現象 今天排查BUG遇到一個有趣的BUG,測試的截圖顯示 這個BUG只在IE11下出現。 BUG原因 這個問題的原因是keep-alive機制引起。 當瀏覽器在向一個網址發起請求時,會建立一個tcp/ip連線,之後發起的請求會複用這個連線。 但是這個連線有兩個限制,就是連線超時時間和最大連線
縮點【洛谷P1262】 間諜網路
【洛谷P1262】 間諜網路 題目描述 由於外國間諜的大量滲入,國家安全正處於高度的危機之中。如果A間諜手中掌握著關於B間諜的犯罪證據,則稱A可以揭發B。有些間諜收受賄賂,只要給他們一定數量的美元,他們就願意交出手中掌握的全部情報。所以,如果我們能夠收買一些間諜的話,我們就可能控制間諜網中的每一分
【QT designer+ VS2013 】獲取網路時間
使用qt函式獲取網路時間 現在Qt Project Setting中的Qt Modules勾選NetWork,再匯入標頭檔案我也忘了叫什麼了 1 QStringList net_time; 2 QTcpSocket *socket = new QTcpSocket();
【升級Cmake導致】CMake 執行錯誤could not find CMAKE_ROOT!!!
CMake 執行錯誤could not find CMAKE_ROOT!!! 在安裝cartographer的時候,要求cmake 版本為3.5及以上的版本,原裝的cmake 的版本為2.8,在通過ppa升級時執行 sudo apt-get upgraded 時沒有選擇安裝目錄導致,
安全錯誤使用CORS在IE10與Node和Express及XMLHttpRequest: 網路錯誤 0x4c7, 操作已被使用者取消
在IE下:VUE專案,後臺替換為https請求之後,vue熱更新請求掛起,控制檯報錯:XMLHttpRequest: 網路錯誤 0x4c7, 操作已被使用者取消。但是chrome與Firefox正常 當從IE10發起請求時,請求從未命中API伺服器。據我所知,該請求甚至不被髮送。當我使用IE10的開發人員工
【CCF 201709-4】通訊網路(Warshall 65分)
思路 用warshall演算法求傳遞閉包,之後遍歷鄰接矩陣計算有幾個部門能夠訪問到N個部門 O(n^3),顯然超時,但是程式碼量短,水一點分數還是很值的。 Warshall有兩個版本,其中第一
【讀書報告--01】神經網路基礎學習
一、感知器 1.神經網路和感知器 神經網路結構包含輸入層、隱藏層(可以有多層)、輸出層,如下圖所示 其中每個神經元是一個感知器,感知器的結構組成部分:輸入權值、啟用函式、輸出 ps:啟用函式可以有很多種選擇,而感知器的輸出由 y=f(w*x+b)來計算 感知器結構如下圖:
【讀書報告--02】神經網路基礎學習
1.線性單元 定義:使用一個可導的線性函式來替代感知器的階躍函式,這種感知器就叫做線性單元 個人理解:感知器還是那個感知器,只是啟用函式變成一個可導的線性函式:如f(x)=x 如下圖:線性單元與前面所學的感知器(使用階躍函式)的對比,只有啟用函式改為”可導的線性函式“ 2.監督學習和無監督學習的概
【讀書報告--03】神經網路基礎學習
1.神經元 神經元和感知器本質上是一樣的,只不過我們說感知器的時候,它的啟用函式是階躍函式;而當我們說神經元時,啟用函式往往選擇為sigmoid函式或tanh函式 2.神經網路的訓練 現在,我們需要知道一個神經網路的每個連線上的權值是如何得到的。我們可以說神經網路是一個模型,那麼這些權值就是模型的引數,
讀書報告彙總 【讀書報告--01】神經網路基礎學習 【讀書報告--02】神經網路基礎學習 【讀書報告--03】神經網路基礎學習 【讀書報告--04】神經網路基礎學習
以下是本人神經網路基礎的學習過程,邊學邊記,包含對已學知識的總結概況和部分個人見解,目前7篇文獻才學習到卷積神經網路和迴圈神經網路的理論基礎上 對於卷積神經網路的訓練還在研究學習中,希望能夠掌握透裡面的知識,學習完後再對基礎的數字識別案例進行實踐,下個星期再放上其餘的讀書報告 【讀書報告--01】神經網路
【CV知識學習】神經網路梯度與歸一化問題總結+highway network、ResNet的思考
目錄 一、梯度消失/梯度爆炸的問題 二、選擇其他啟用函式 三、層歸一化 四、權值初始化 五、調整網路的結構 一、梯度消失/梯度爆炸的問題 首先來說說梯度消失問題產生的原因吧,雖然是已經被各大牛說爛的東西。不如先看一個簡單的網路
【kubernetes/k8s概念】k8s 網路策略
預設 Pod 是未隔離的,它們可以從任何的源接收請求。Pod 的使用網路策略後,Pod 就會變成隔離的。 一旦 Namespace 中配置的網路策略能夠選擇一個特定的 Pod,這個 Pod 將拒絕任何該網路策略不允許的連線。(Namespace
【Unity3D_常用模組】 Socket網路模組(超級詳細完整,上線專案中穩定使用著)
Socket網路連線模組 主要分為四部分: 一、套接字管理器(SocketManager.cs) 1)、連線 2)、斷開 3)、接收(執行緒) 4)、傳送(攜程) 1.傳送訊息基本方法 2.二進位制方式傳送 3.protobuf方式傳送
XMLHttpRequest: 網路錯誤 0x4c7, 操作已被使用者取消
<!DOCTYPE html> <html> <script type="text/javascript"> var xhr = new XMLHttpRequest(); var url = "https://otherdomain.c
【NCNN原始碼分析】2.網路層基類
Layer類是所有其他網路層的一個基類,所有的網路層都會從Layer繼承,實現互異的計算過程,所有網路層的相似之處在於輸入輸出的規範以及前向傳播的過程。 Option是屬性類,lightmode表示輕量級模式在網路推理中會不斷地進行垃圾回收,num_thread
【帶你入門】java網路程式設計
網路程式設計 網路程式設計對於很多的初學者來說,都是很嚮往的一種程式設計技能,但是很多的初學者卻因為很長一段時間無法進入網路程式設計的大門而放棄了對於該部分技術的學習。 在 學習網路程式設計以前,很多初學者可能覺得網路程式設計是比較複雜的系統工程,需要了
【Java學習筆記】23.網路程式設計--Socket
一.Java網路程式設計 網路程式設計又稱為Socket程式設計,或者套接字。 Socket包括: 1)ip:一個計算的標示(找到這個計算機) 2)埠號:應用程式都會對應一個埠,用來進行通訊,有
【Android進階】判斷網路連線狀態並自動介面跳轉
用於判斷軟體開啟時的網路連線狀態,若無網路連線,提醒使用者跳轉到設定介面 /** * 設定在onStart()方法裡面,可以在介面每次獲得焦點的時候都進行檢測 */ @Override
【UE4學習記錄】UE4網路方面的探索0-2
在上一章中,我粗略的表達了在最開始的UI介面設定上的操作,沒有用到一絲程式碼,直接藍圖敲定去實現基本的東西。 接下來回到正題,我們需要實現UI所對應的具體功能了。 第一步:整理思路 首先確定UI 的按
【智慧家居篇】wifi網路接入原理(下)——關聯Association
認證完成後,下一步就是關聯(Association)。 工作站與基站進行關聯,以便獲得網路的完全訪問權。關聯屬於一種記錄(record keeping)過程,它讓分散式系統(Distribution System)得以記錄每個移動式工作站的