axios
# axios
# axios 取消请求
两种取消请求的方式:
通过 axios.CancelToken.source 生成取消令牌 token 和取消方法 cancel
通过 axios.CancelToken 构造函数生成取消函数
参考:https://segmentfault.com/a/1190000021290514 (opens new window)
# axios 内部的运作流程图
# axios 源码分析
源码目录:
https://github.com/ronffy/axios-tutorial (opens new window)
https://zhuanlan.zhihu.com/p/266670598 (opens new window)
# axios 和 fetch 区别
- 浏览器原生支持
Fetch 唯一碾压 Axios 的一点就是现代浏览器的原生支持。
- JSON 数据自动转换
Axios 自动将数据转换为 JSON
fetch 手动完成
- 拦截器
Axios 自带请求拦截器和响应拦截器
Fetch 实现拦截器需要重写全局 Fetch 方法
# 35.1 axios 和 ajax 区别
- ajax:异步请求,是一种无需再重新加载整个网页的情况下,能够更新部分网页的技术
- axios:用于浏览器和 node.js 的基于 promise 的 HTTP 客户端
- ajax:
本身是针对 MVC 的编程,不符合现在前端 MVVM 的浪潮 基于原生的 XHR 开发,XHR 本身的架构不清晰,已经有了 fetch 的替代方案 JQuery 整个项目太大,单纯使用 ajax 却要引入整个 JQuery 非常的不合理(采取个性化打包的方案又不能享受 CDN 服务
- axios
从 node.js 创建 http 请求 支持 Promise API 客户端支持防止 CSRF 提供了一些并发请求的接口(重要,方便了很多的操作)
更新时间: 2/12/2022, 11:22:47 AM