Ajax總結

//第三個參數是true或false,表示請求是以異步仍是同步的模式發出。(默認爲true,通常不建議爲false)
function ajax(url, success, fail){
    // 1. 建立鏈接
    var xhr = null;
    xhr = new XMLHttpRequest()
    // 2. 鏈接服務器
    xhr.open('get', url, true)
    // 3. 發送請求
    xhr.send(null);
    // 4. 接受請求
    xhr.onreadystatechange = function(){
        if(xhr.readyState == 4){
            if(xhr.status == 200){
                success(xhr.responseText);
            } else { // fail
                fail && fail(xhr.status);
            }
        }
    }
}
複製代碼

readyState

0 - (未初始化)尚未調用send()方法javascript

1 - (載入)已調用send()方法,正在發送請求java

2 - (載入完成)send()方法執行完成ajax

3 - (交互)正在解析響應內容服務器

4 - (完成)響應內容解析完成,能夠在客戶端調用了異步

status

1xx:信息響應類,表示接收到請求而且繼續處理url

2xx:處理成功響應類,表示動做被成功接收、理解和接受spa

3xx:重定向響應類,爲了完成指定的動做,必須接受進一步處理code

4xx:客戶端錯誤,客戶請求包含語法錯誤或者是不能正確執行ip

5xx:服務端錯誤,服務器不能正確執行一個正確的請求get

相關文章
相關標籤/搜索