标签:src set amp ready 函数 ISE open mis ade
var xhr = new XMLHTTPRequest() 先实例化一个对象
xhr.open() 配置 有三个参数 1.get/post 2.地址 3.async 异步:true 同步:false默认情况下为异步请求
xhr.send() 发送数据
xhr.onreadyStateChange=function(){ 监听
if(readstate==4&&status==200){
如果状态为4 同时 http状态值为200的话 就返回数据
var data = responseText 数据形式有json,text
}
}
如果要设置请求头的话使用xhr.setRequestHeader()
readstate有四个状态值:
0:请求初始化 没有调用open()方法
1:服务器已经建立 已经调用open()但是没有调用send()
2:请求已经接收 已经调用send()但是未响应
3:请求处理中 已经接收到部分响应数据
4:请求已完成 已经得到全部响应数据并可使用
get和post的区别:
get安全性比post低 因为get的url是可见的,会泄露信息
get是在服务器上获取资源,post给服务器发送数据
get传输数据小 可以用来缓存数据 post传输数据大
同步异步的区别:
同步:代码一行一行执行,前面的代码没有执行完,后面的代码就不会被执行(容易导致代码阻塞)
异步:当前代码没有执行完,也可以执行下面的代码(代码不易理解)
异步方案:promise
什么是promise?
promise是一个对象,对象和函数的区别就是对象可以保存状态,函数不可以(闭包除外)
并未剥夺函数return的能力,因此无需层层传递callback,进行回调获取数据
代码风格,容易理解,便于维护
多个异步等待合并便于解决
标签:src set amp ready 函数 ISE open mis ade
原文地址:https://www.cnblogs.com/2019yjy/p/11491344.html