ajax请求怎样实现?具体步骤

2020-03-31 11:29:42 java常见问答 8930

有过java相关软件开发经验的朋友对ajax想必是非常熟悉的吧,因为ajax实在是太常用到了,那么你还能清楚的把ajax请求的具体步骤讲出来吗?好了,不管你还记不记得,想了解的朋友一起来看看吧。

ajax的工作原理相当于在用户和服务器之间加了—个中间层(AJAX引擎),使用户操作与服务器响应异步化。并不是所有的用户请求都提交给服务器,像—些数据验证和数据处理等都交给ajax引擎自己来做, 只有确定需要从服务器读取新数据时再由ajax引擎代为向服务器提交请求。

ajax(Asynchronous javascript and xml),实现了客户端与服务器进行数据交流过程。使用技术的好处是:不用页面刷新,并且在等待页面传输数据的同时可以进行其他操作。

第一步:创建ajax对象

var xhr = new XMLHttpRequest();

第二步:打开请求

//请求方法自定,第三个参数通常设为true,异步请求

xhr.open('GET', url, true);

第三步:发送请求

//可选,设置请求头,根据需要定,post请求的话要写
//xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send(要发送的数据);

第四步:接收响应

//服务器响应状态(readyState)改变时都会被执行

xhr.onreadystatechange = function(){

//服务器响应状态(readyState)和响应的HTTP状态(status)同时满足才算成功
if (xhr.readyState==4 && xhr.status==200){
//通过xhr.responseText,获得服务器返回的内容
console.log(xhr.responseText)
}
}

ajax运行步骤与状态值说明如下:

在ajax实际运行当中,对于访问XMLHttpRequest(XHR)时并不是一次完成的,而是分别经历了多种状态后取得的结果,对于这种状态在ajax中共有5种,分别是:

0 (未初始化)对象已经创建,但还没有调用open()方法

1 (启动)已经调用open() 方法,但尚未调用send()方法发送请求

2 (发送)send()方法已调用,请求已经发送完成,但尚未接收到响应

3 (接收)已经接收到部分响应数据

4 (完成)已经接收到了全部数据,而且已经可以在客户端使用了

对于上面的状态,其中“0”状态是在定义后自动具有的状态值,而对于成功访问的状态(得到信息)我们大多数采用“4”进行判断。

朋友们你复习到了吗,希望以上步骤可以帮助到你们哦,最后记得关注本站了解更多相关内容。