Axios 与 Ajax 的区别及优缺点
区别:
axios 是通过 Promise 实现对 ajax 技术的一种封装,就像 jquery 对 ajax 的封装一样,简单来说就是 ajax 技术实现了局部数据的刷新,axios 实现了对 ajax 的封装,axios 有的 ajax 都有,ajax 有的 axios 不一定有,总结一句话就是 axios 是 ajax,ajax 不止 axios
优缺点:
ajax:
- 本身是针对 MVC 编程,不符合前端 MVVM 的浪潮
- 基于原生 XHR 开发,XHR 本身的架构不清晰,已经有了 fetch 的替代方案,jquery 整个项目太大,单纯使用 ajax 却要引入整个 jquery 非常不合理(采取个性化打包方案又不能享受 cdn 服务)
- ajax 不支持浏览器的 back 按钮
- 安全问题 ajax 暴露了与服务器交互的细节
- 对搜索引擎的支持比较弱
- 破坏程序的异常机制
- 不容易调试
axios:
- 从浏览器中创建 XMLHttpRequests
- 从 node.js 创建 http 请求
- 支持 Promise API
- 拦截请求和响应
- 转换请求数据和响应数据
- 取消请求
- 自动转换 JSON 数据
- 客户端防止 CSRF(网站恶意利用)
- 提供了一些并发请求的接口
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论