关于Axios

248 阅读1分钟

Axios

  1. 是一个基于promise的http库,可以用于浏览器和node.js中
  2. 可以拦截请求和响应
  3. 可以转换请求数据和响应数据,并对响应回来的内容自动转换成json类型的数据
  4. 安全性更高,客户端支持防御xsrf
  5. 常用方法
    1. get
    2. post
    3. delete
    4. put
  6. 相关配置属性
    1. url:请求地址
    2. method:请求方法
    3. baseURL:自定添加在url前面,便于为axios实例方法传递相对url
    4. headers:自定义请求头
    5. transformRequest:允许在向服务器发送前,修改请求数据,只能用于put,post和patch这几个请求方法
    6. params:即将于请求一起发送的url参数,必须是一个无格式对象或urlSearchParams对象
    7. auth:表示应该使用http基础验证,并提供凭据
    8. proxy:定义代理服务器的主机名和端口

Axios的二次封装

  1. 配置通用的基础路径和超时时间 axios.create({baseURL,timeout})
  2. 显示请求进度条
    1. 显示:准备发请求前显示,在请求拦截器中执行 NProgress.start()
    2. 隐藏:请求结束隐藏,在响应拦截器成功/失败回调中执行NProgress.done()
  3. 携带token数据
    • 在请求头中,将token添加到请求头中
  4. 成功返回的数据不再是response,而是响应体数据response.data
    • 响应拦截器成功的回调中:return response data
  5. 统一处理请求,具体请求可以选择处理或不处理