原生ajax请求过程,get和post的区别

述原生ajax请求过程,get和post的区别

// ajax 提交 post 请求的数据
// 1. 创建核心对象
var xhr = new XMLHttpRequest();
// 2. 准备建立连接
xhr.open("POST", "register.php", true);
// 3. 发送请求
// 如果要POST提交数据,则需要设置请求头
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
// 发送数据
xhr.send(querystring);
// 4. 处理响应
xhr.onreadystatechange = function () {
     if (xhr.readyState === 4) { // 请求处理完毕,响应就绪
          if (xhr.status === 200) { // 请求成功
               var data = xhr.responseText;
               console.log(data);
          }
     }
}

面试官爱问的问题

注意一:open 的参数要牢记面试官最爱问这个问题
method:请求的类型;GET 或 POST
url:文件在服务器上的位置,相对位置或绝对位置
async:true(异步)或 false(同步)
为什么使用 Async=true ?
我们的实例在 open() 的第三个参数中使用了 "true"。
该参数规定请求是否异步处理。
True 表示脚本会在 send() 方法之后继续执行,而不等待来自服务器的响应。
注意二:post请求不同于get请求

send(string)方法post请求时才使用字符串参数,否则不用带参数。
如果是get直接将参数存入url里面,send() 里面不带参数
注意三:post请求一定要设置请求头的格式内容**

发布了125 篇原创文章 · 获赞 3 · 访问量 5886

猜你喜欢

转载自blog.csdn.net/z591102/article/details/105088926