ajax

ajax是什么?

  • AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
  • 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

基础/核心

XMLHttpRequest 对象
XMLHttpRequest 用于在后台与服务器交换数据。意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

请求过程

1. 创建XMLHttpRequest对象

if(window.XMLHttpRequest){
    var xhr = new XMLHttpRequest();   //现代浏览器
}else{
    var xhr = new ActiveXObject("Microsoft.XMLHTTP");  //ES6
}

2. 设置请求方式

xhr.open('get', 'demo.php', true); //对于demo.php的get请求,false同步true异步

3. 调用回调函数 接受服务器返回信息

xhr.onreadystatechange = function(){  //监听请求状态变化
    if(xhr.readyState==4){            //响应就绪时执行
        if(xhr.status==200){          //判断HTTP返回码是否正确返回数据
            var data = JSON.parse(xhr.responseText);//获取返回的数据 
            var str = "";
            for(var i = 0; i < data.length; i++){   //处理返回数据
                str += "
  • "+data[i]+"
  • "; } oList.innerHTML = str; //写入页面 }else{ oTip.innerHTML = "请求失败,请重试"; } } }

    XMLHttpRequest状态值readyState

    • 0 请求未初始化
    • 1 服务器连接己建立
    • 2 请求已接收
    • 3 处理请求,响应中
    • 4 响应就绪
      注:请求后不论能否返回数据,xhr.readyState的值都会变成4为响应成功。(无论访问是否成功都将响应的步骤)

    XMLHttpRequest状态码status

    • 200 - 请求成功
    • 301 -Moved Permanently 资源(网页等)被永久转移到其它URL
    • 304 -Not Modified 使用缓存文档
    • 404 - 请求的资源(网页等)不存在
    • 500 - 内部服务器错误
      注:无论ajax访问是否成功,由HTTP协议根据所提交的信息,服务器所返回的HTTP头信息代码、

    ajax封装

    ajax封装.PNG

    你可能感兴趣的:(ajax)