Axios知识点快速总结

Axios

1、简介

  1. 基于xhr&promise的异步ajax请求库
  2. 支持请求&响应拦截器
  3. 支持请求取消
  4. 请求&响应数据转换
  5. 批量发送多个请求

2、常用语法


axios(config):通用的任意类型请求的方式
axios(url[,config]):指定url发送get请求
axios.request(config):等同于第一个
axios.get(url[,config]):发get请求
axios.delete(url[,config]):发delete请求
axios.post(url[,data,config]):发送post请求
axios.put(url[,data,config]):发送put请求


axios.default.xxx:请求的默认全局配置
axios.interceptors.request.use():添加请求拦截器
axios.interceptors.response.use():添加响应拦截器

axios.create([config]):创建一个新的axios

axios.Cancel():用于创建取消请求的错误对象
axios.CancelToken():用于创建取消请求的token对象
axios.isCancel():判断是否是一个取消请求的错误
axios.all(promises):用于批量执行多个异步请求
axios.spread():用来指定接受所有成功数据的回到函数的方法

3、难点分析

(1)axios.create(config)

  1. 根据指定配置创建一个新的 axios, 也就就每个新 axios 都有自己的配置
  2. 新 axios 只是没有取消请求和批量发请求的方法, 其它所有语法都是一致的
  3. 为什么要设计这个语法?
    (1) 需求: 项目中有部分接口需要的配置与另一部分接口需要的配置不太一样, 如何处理
    (2) 解决: 创建 2 个新 axios, 每个都有自己特有的配置, 分别应用到不同要求的接口请求中

(2)拦截器函数/ajax请求/请求的回到函数的调用顺序

  1. 说明: 调用 axios()并不是立即发送 ajax 请求, 而是需要经历一个较长的流程
  2. 流程: 请求拦截器2 => 请求拦截器1 => 发ajax请求 => 响应拦截器1 => 响
    应拦截器 2 => 请求的回调
  3. 注意: 此流程是通过 promise 串连起来的, 请求拦截器传递的是 config, 响应
    拦截器传递的是 response
    (3)取消请求
  4. 基本流程
    配置 cancelToken 对象
    缓存用于取消请求的 cancel 函数
    在后面特定时机调用 cancel 函数取消请求
    在错误回调中判断如果 error 是 cancel, 做相应处理
  5. 实现功能
    点击按钮, 取消某个正在请求中的请求
    在请求一个接口前, 取消前面一个未完成的请求
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值