ajax 原生 xhr 对象

事件
    onreadystatechange
    
    xhr.open("get","example.php", false);
    xhr.send(null)
    send()方法接收一个参数,即要作为请求主体发送的数据。调用send()方法后,请求被分派到服务器
    如果是GET方法,send()方法无参数,或参数为null;如果是POST方法,send()方法的参数为要发送的数据


    响应之前
    readyState
    0(UNSENT):未初始化。尚未调用open()方法
    1(OPENED):启动。已经调用open()方法,但尚未调用send()方法
    2(HEADERS_RECEIVED):发送。己经调用send()方法,且接收到头信息

    3(LOADING):接收。已经接收到部分响应主体信息
    4(DONE):完成。已经接收到全部响应数据,而且已经可以在客户端使用了


    responseText: 作为响应主体被返回的文本(文本形式)
    status: HTTP状态码(数字形式)
    200 ok 304 不ok
    404,500

 

function myAjax(method,url,data,fn){
    var xhr;

    // console.log(XMLHttpRequest);

    if(window.XMLHttpRequest){
        xhr = new XMLHttpRequest();
    }else{
        xhr = new ActiveXObject('Microsoft.XMLHTTP');
    }

    xhr.onreadystatechange = function(){
        if(xhr.readyState =='4'){
            if(xhr.status == '200'){
                // alert(xhr.responseText);
                fn(xhr.responseText);
            }    
                    
        }

    }
     //发送请求
    xhr.open(method,url,true);
    (method == 'get')?xhr.send();xhr.send(data):
    
    // console.log(xhr);

}

 

转载于:https://www.cnblogs.com/alan-alan/p/7553103.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值