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

相关文章
相关标签/搜索