💡
原文中文,约2700字,阅读约需7分钟。
📝
内容提要
从 1.7.0 版本开始,Axios 支持 fetch 方法,但默认使用 xhr。使用 fetch 需要手动指定,优先级为 ['xhr', 'http', 'fetch']。可以自定义适配器以满足特定需求,Axios 会根据环境选择适配器。
🎯
关键要点
- Axios 从 1.7.0 版本开始支持 fetch 方法,但默认使用 xhr。
- 使用 fetch 方法需要手动指定,优先级为 ['xhr', 'http', 'fetch']。
- 可以通过传入字符串或数组来指定适配器。
- 若想使用 fetch() 适配器,只需提高其优先级,无需自定义适配器。
- 支持自定义适配器以满足特定需求,如 jsonp 请求。
- Axios 内部根据环境判断使用哪种适配器,默认顺序为 ['xhr', 'http', 'fetch']。
- 新版本中,适配器支持判断被放在各适配器单独的文件中。
- 扩展其他适配器时会更加方便,源码中提供了适配器的管理方式。
❓
延伸问答
Axios 从哪个版本开始支持 fetch 方法?
Axios 从 1.7.0 版本开始支持 fetch 方法。
如何在 Axios 中指定使用 fetch 方法?
可以通过传入字符串或数组来指定适配器,如传入 'fetch' 或 ['fetch', 'xhr', 'http']。
Axios 默认使用哪个适配器?
Axios 默认使用的适配器顺序是 ['xhr', 'http', 'fetch']。
如果需要自定义适配器,应该如何实现?
可以将 adapter 定义为一个函数,并返回一个 Promise 来实现自定义适配器。
Axios 如何判断使用哪个适配器?
Axios 根据环境支持情况,按照预设的适配器顺序来判断使用哪个适配器。
在新版本中,如何扩展其他适配器?
在新版本中,适配器的判断被放在各适配器单独的文件中,扩展其他适配器会更加方便。
➡️