您好,欢迎访问一九零五行业门户网

深入理解ajax异步请求的五个步骤(详细代码)

在前端工作中,经常会用到ajax,其实很多人只知道ajax是异步请求,不知道应该如何用它,它的基本步骤有哪些,ajax请求过程是怎样的?接下来这篇文章就给大家介绍ajax的请求步骤,以及ajax请求步骤的详细代码。感兴趣的朋友可以看看。
ajax(asynchronous javascript and xml):是指一种创建交互式网页应用的网页开发技术,通过在后台与服务器进行少量数据交换,ajax 可以使网页实现异步更新。这就意味着可以在不重新加载整个网页的情况下,对网页的局部进行更新。
1.建立xmlhttprequest对象
所有现代浏览器(ie7+、firefox、chrome、safari 以及 opera)均支持xmlhttprequest 对象,而ie5 和 ie6 使用 的是activexobject。
if(window.xmlhttprequest){ xmlhttp = new xmlhttprequest(); if(xmlhttp.overridemimetype){ xmlhttp.overridemimetype("text/xml"); } }else if(window.activexobject){ var activename =["msxml2.xmlhttp","microsoft.xmlhttp"]; for(var i=0; i<activename.length; i++){ try{ xmlhttp = new activexobject(activename[i]); break; }catch(e){ } } } if(!xmlhttp){ alert("创建xmlhttprequest对象失败"); }else{ }
2.设置回调函数
xmlhttp.onreadystatechange= callback; function callback(){}
3.使用open方法与服务器建立连接 xmlhttp.open("get","ajax?name="+ name,true)
此步注意设置http的请求方式(post/get),如果是post方式,注意设置请求头信息xmlhttp.setrequestheader("content-type","application/x-www-form-urlencoded")
4.向服务器端发送数据
xmlhttp.send(null);
如果是post方式就不为空
5.在回调函数中针对不同的响应状态进行处理
if(xmlhttp.readystate == 4){ //判断交互是否成功 if(xmlhttp.status == 200){ //获取服务器返回的数据 //获取纯文本数据 var responsetext =xmlhttp.responsetext; document.getelementbyid("info").innerhtml = responsetext; } }
readystate属性:表示请求/响应过程的当前阶段
0:未初始化。尚未调用 open()方法。
1:启动。已经调用 open()方法,但尚未调用 send()方法。
2:发送。已经调用 send()方法,但尚未接收到响应。
3:接收。已经接收到部分响应数据。
4:完成。已经接收到全部响应数据,而且已经可以在客户端使用了。
只有在xmlhttprequest对象完成了以上5个步骤之后,才可以获取从服务器端返回的数据。
status属性:响应的 http 状态码
200:响应成功
301:永久重定向/永久转移
302:临时重定向/临时转移
304:本次获取内容是读取缓存中的数据
400:请求参数错误
401:无权限访问
404:访问的资源不存在
总结:以上介绍了ajax请求的五个步骤以及详细代码 ,没有接触过得朋友可能看起来比较困难,没关系,看了以后,多去动手敲敲,慢慢就懂了,希望可以帮助到你!
以上就是深入理解ajax异步请求的五个步骤(详细代码)的详细内容。
其它类似信息

推荐信息