AJAX学习
例如去拿水杯
A— 老师去拿水杯—等待老师上课—拿回来继续上课++++++++同步
B—找同学去拿水杯—告诉他水杯在哪里/怎么去跑走----出发----监视(过了多久)--------韩辉结果成功或者失败++++++异步(其他同学继续上课)
sync默认是true:即为异步方式,$.ajax执行后,
会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.ajax里的success方法
若要将其设置为false,则所有的请求均为同步请求
,在没有返回值之前,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以
1创建ajax对象
var xhr=new XMLHttpResquest;
2告诉去哪里
怎么去(get/post/delete/put)
xhr.open(‘怎么去’,‘去哪里’,‘同步/异步’)
3出发
xhr.send();
4监视
xhr.onreadystatechange = function(){
// 0 还没有调用send
// 1 已经调用send方法
// 2 已经接收到响应内容
// 3 正在解析响应内容
// 4 响应完成,客户端可以使用了
if(xhr.readyState==4){
// 成功/失败
// 状态码 status
// 200 成功
// 500 服务器错误
// 304 浏览器缓存
// 401 未被授权
// …
if(xhr.status == 200){
// 指定要响应的数据类型
// JSON.parse() 将字符串转换成对象
console.log(JSON.parse(xhr.response));
}
}
}