我一直在搜索並找不到關於此事的任何文檔:當使用Microsoft提供的XMLHttpRequest接口發出同步HTTP請求時,如何處理連接/網絡相關錯誤。處理同步XHR連接錯誤
我下WScript的工作,使一個HTTP請求包裝,我想知道我將如何處理不同連接/網絡錯誤(而不是服務器響應報告錯誤)使用XMLHttpRequest對象接口的HTTP請求。
爲了澄清,我不僅想知道是否發生了連接/網絡錯誤,而且還想知道如何確定發生了什麼樣的錯誤,因此不同的錯誤會導致不同的處理。一個例子是一個connection timeout
錯誤,connection refused
錯誤和dns resolve
錯誤
// httpObj is a valid Microsoft/ActiveX provided XMLHttpRequest object name
function() {
var request = new ActiveXObject(httpObj);
request.open(this.httpMethod, this.httpUrl, false);
request.timeout = this.httpTimeout;
request.setRequestHeader("Connection", "close");
request.send(this.httpData);
// How would I handle connection/network-related errors?
}
我並不想處理響應狀態錯誤(通過服務器重新發送的錯誤),而只是連接問題 – SReject
例如,如何區分連接超時和DNS解析錯誤? – SReject
@SReject我以爲你想區分來自網絡錯誤的HTTP錯誤響應,但我從編輯中看到,你實際上想區分不同類型的連接錯誤。這不能用XHR API來完成,它不區分網絡錯誤的類型。這可能會使用一些專有的ActiveX行爲,但我不知道如何,如果可能的話。 – apsillers