AJAX的get和post请求原生编写方法

AJAX的get请求原生编写方法:
 1 var xhr=new XMLHttpRequest();
 2 xhr.onreadystatechange=function(){
 3     if(xhr.readyState===4){
 4         if(xhr.status===200){
 5             // 响应完成并且成功
 6         }else{
 7             // 响应完成但有问题
 8         }
 9     }
10 };
11 xhr.open('GET','x.php?k1=v1&k2=v2&k3=v3',true);
12 xhr.send(null);
/***
 xhr.open()方法参数:
    1.要发送请求的类型
    2.URL相对于执行代码的当前页面(绝对路径也可以)
    3.是否异步发送请求的布尔值
 xhr.send()方法接收的一个参数表示'作为请求主体发送的数据’,
 如果不需要通过请求主体发送数据,则必须传入null,这个参数是必须的
 true:是否异步
 status:响应的HTTP状态
 readyState:xhr对象的readyState属性表示请求/响应过程的当前活动阶段。
            0 表示未初始化。尚未调用open()方法;
       1 表示启动。已经调用open()方法,但尚未调用send()方法;
       2 表示发送。已经调用send()方法,但尚未接收到响应;
       3 表示接收。已经接收到部分响应数据;
       4 表示完成。已经接收到全部响应数据,而且已经可以在客户端使用。 ***/

AJAX的post请求原生编写方法:
 1 var xhr=new XMLHttpRequest();
 2 xhr.onreadystatechange=function(){
 3     if(xhr.readyState===4){
 4         if(xhr.status===200){
 5             // 响应完成并且成功
 6         }else{
 7             // 响应完成但有问题
 8         }
 9     }
10 };
11 xhr.open('POST','x.php',true);
12 xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');//修改请求消息的头部
13 xhr.send('k1=v1&k2=v2&k3=v3');
原文地址:https://www.cnblogs.com/sunyuweb/p/8494604.html