Ajax认识

来源:互联网 发布:弱电网络模块 编辑:程序博客网 时间:2024/05/29 23:48

我所理解的Ajax

入行时间不太长,感觉在Ajax方面有自己的一部分心得,有什么问题,欢迎大家指正!

1. 什么是Ajax

关于这个,就不详细说了,具体英文缩写,到处也都能见到,不过还是写一下;
AJAX:“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。不过现在AJAX不单单是缩写了,已经成为一个专门的词汇来代替这么技术;

2.Ajax作用

上面介绍中写输了,适用于交互性网页应用的,什么是交互性网页应用,我也不太能解释清楚,我所理解的就是为了局部刷新(异步效果);

3.作用深入

  • 正如我们所理解的,点击一个链接后,回向服务器发送请求,也就是要东西,浏览器会将网页需要的所有东西发过来,比如html文件,css文件,js文件等
  • 如果在点击一个按钮,我们不需要更改所有的文件,比如只需要更改一个表格内容,传统的请求方式会重新将这个网页都发送过来,浏览器再次渲染,这样会造成资源浪费,如果网速较慢的会影响用户体验;
  • 在这样的前提下诞生了Ajax技术,解决局部更新的问题;

4.使用规范

按照原生写法
JavaScript
//1.创建XMLHttpRequeset对象
var xhr=new XMLHttpRequest();
//2.配置发送参数;
xhr.open('get','04.php')
//3.执行发送动作
xhr.send(null);
//4.处理响应
xhr.onreadystatechange=function(){
if(xhr.status == 200){
if(xhr.readyState == 4){
//在这里才能获得服务器返回的数据
var sesult = xhr.responseText;
}
JavaScript

5.代码详解

  • 创建XMLHttpRequeset对象
    大家看到new之后我相信都知道这是一个实例化对象,下面的open,send都是构造函数中的方法;(xhr这个并不是写死的,对象的命名而已,取名abc也是可以的)
  • 配置发送参数:open方法中有两个参数,
    第一个是提交方式,常见的就是get,post,
    第二个是后台文件路径,或者可以叫做后台的端口;
    备注:如果是get提交方式,需要在路径后添加参数;post不需要
    第三个是否异步:默认值为true,false为同步;

  • 执行发送动作:send():向后台传递参数
    参数:如果为get提交方式,直接写null即可;
    如果是post提交方式,需要以下2点;
    1.设置请求头
    2.在send中传递参数;

  • 处理响应:onreadystatechange :回调函数
    这个阶段就是我们按照ajax设置好的函数名,写好函数,浏览器自行调用,并将数据返回到前台,接受即可;
    判断作用:
    第一层为http协议状态码:必须保证成功访问并返回数据;
    第二次为xhr执行阶段,当xhr.readyState == 4)时,表示数据解析完毕,可以使用了;

6.总结

这只是对于Ajax的初步理解和使用,其中很多都没有提到,比如异步,jQuery中的Ajax的封装原理,json等具体的,后面会再具体解析;

原创粉丝点击