1.区别
axios是通过promise实现对ajax技术的一种封装,就像jQuery实现ajax封装一样。
ajax技术实现了网页的局部数据刷新,axios实现了对ajax的封装。
axios是ajax,ajax不止axios。
2.代码
axios
axios({ url: ‘/getUsers‘, method: ‘get‘, responseType: ‘json‘, // 默认的 data: { //‘a‘: 1, //‘b‘: 2, } }).then(function (response) { console.log(response); console.log(response.data); }).catch(function (error) { console.log(error); })
ajax
$.ajax({ url: ‘/getUsers‘, type: ‘get‘, dataType: ‘json‘, data: { //‘a‘: 1, //‘b‘: 2, }, success: function (response) { console.log(response); } })
3. 优缺点
ajax:
- 本身是针对MVC的编程,不符合现在前端MVVM的浪潮
- 基于原生的XHR开发,XHR本身的架构不清晰,已经有了fetch的替代方案
- JQuery整个项目太大,单纯使用ajax却要引入整个JQuery非常的不合理(采取个性化打包的方案又不能享受CDN服务)
axios:
- 从浏览器中创建XMLHttpRequests
- 从 node.js 创建 http 请求
- 支持 Promise API,Promise管理异步,告别传统callback方式
- 拦截请求和响应
- 转换请求数据和响应数据
- 取消请求
- 自动转换 JSON 数据
- 客户端支持防止CSRF
- 提供了一些并发请求的接口(重要,方便了很多的操作)
————————————————
原文链接:https://blog.csdn.net/qq_42942555/article/details/88400721