axios

51 阅读1分钟

axios的参数配置

const service = axios.create({
  method: 'get', // post、get、put、delete....
  baseURL: '', // 请求的域名,基本地址,公共的路径
  url: '', // 请求的路径
  params: {}, // get参数会将请求参数拼接在url上
  data: {}, // post会将请求参数放在请求体中
  headers: {}, // 设置请求头,例如设置token等
  timeout: 1000, // 设置请求超时时长,单位:ms
  withCredentials:default,//表明了是否是跨域请求、默认是default false
  maxContentLength:1000//相应内容的最大值
})

请求拦截

request.interceptors.request.use(
  config => {
    // 可以插入一些 设备类型 中英文 token
    return config
  },
  error => {
    return Promise.reject(error)
  }
)

响应拦截

request.interceptors.response.use(
  res => {
    // 认证失败 账号失效 返回登录页
    return res
  },
  // 响应错误的代码写这里
  error => {
    // 根据状态码 显示一些提示或者返回登录页
    return Promise.reject(error)
  }
)

多个请求

axios.all([
  axios.post(),
  axios.detete()
])