AJAX的实现基础讲解及Jquery的ajax的原生js代码实例
ajax的实现基础是xmlhttprequest对象。(使用可以发出http请求和接收http响应)
所以下面先来了解xmlhttprequest。
w3c提出了xmlhttprequest标准,分为level 1和level 2。
level 1主要存在以下缺点:
受同源策略的限制,不能发送跨域请求; 不能发送二进制文件(如图片、视频、音频等),只能发送纯文本数据; 在发送和获取数据的过程中,无法实时获取进度信息,只能判断是否完成;
level 2中新增了以下功能:
可以发送跨域请求,在服务端允许的情况下; 支持发送和接收二进制数据; 新增formdata对象,支持发送表单数据; 发送和获取数据时,可以获取进度信息; 可以设置请求的超时时间;
这个对象如何使用?
一个ajax请求的流程:发送请求+接收响应=1.发送之前+2.发送请求+3.收到响应+4.收到之后。
1.发送之前
创建xmlhttprequest对象
var xhr=new xmlhttprequest();//这里会存在浏览器的兼容性差异的
设置xhr的参数(如timeout,responsetype)
2.发送请求
xhr.open();//一定要先open了在send,就好比水龙头必须先开了开关才有水流 xhr.send(data);
3.收到响应和4.收到之后结合起来说
其实就是那个回调函数,就是根据收到不同的响应来根据业务回调相应的函数。
接着这里就要深入了解xhr的相关事件(共8个),这里就直接放链接了
https://blog.csdn.net/summer_savetime/article/details/52118152
其实基本上网上一搜详细的知识讲解都有的。这里主要是自己过一遍对这个知识点的理解。
简言之,ajax的实现基础就是xmlhttprequest对象。
通过原生js实现ajax方法,就可以对ajax有进一步的理解。
这里简单说实现思路:
function ajax(){ var ajaxdata={ //在这个对象里就是ajax的参数设置以及传参 } //通过上面提到的请求流程,调用xmlhttprequest对象的方法,并把ajaxdata对应的数据传进去 }
具体代码
以上内容为个人总结,仅供参考,如有侵权联系编者删除内容
上一篇: shell数组
推荐阅读
-
基于jQuery实现的Ajax 验证用户名唯一性实例代码
-
使用JQuery快速实现Tab的AJAX动态载入(实例讲解)
-
模拟jQuery中的ready方法及实现按需加载css,js实例代码
-
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
-
Ajax (Asynchronous javascript xml) 搜索框核心代码(JQuery) Ajax判断用户名存在核心代码 附:原生js的Ajax代
-
JS实现的ajax和同源策略(实例讲解)
-
实例代码讲解ajax实现的无刷新分页
-
原生JS实现ajax与ajax的跨域请求实例
-
ajax实现用户名校验的传统和jquery的$.post方式(实例讲解)
-
原生js实现对Ajax的封装(仿jquery)