封装axios

蹲街弑〆低调 提交于 2020-10-29 01:40:54

1、创建一个server目录,在该目录下创建index.js文件

2、配置axios:

import axios from 'axios'
//使用create方法创建axios实例
export const Service = axios.create({
  timeout: 6000, // 请求超时时间
  baseURL: process.env.BASE_API,// 配置在环境变量中
  headers: {
    'Content-Type': 'application/json;charset=UTF-8'
  }
})
// 添加请求拦截器
Service.interceptors.request.use(
config => {
  // 这里可以引入loading 或者 执行一个回调方法
  return config
},
error => {
return Promise.reject(error)
 }
)
// 添加响应拦截器
Service.interceptors.response.use(response => {
  // console.log(response)
  let res = response.data
  return res 
}, error => {
  console.log(error)
  const msg = error.message!== undefined ? error.message : ''
  return Promise.reject(error)
})

3、封装请求方法:

a、创建一个api.js文件

b、

inport Serviceform 'server/index.js'
export function post(params) {
  return Service({
    url: 'login',
    methed:'post',
    params:params
  })
}
export function get(params) {
  return Service({
    url: 'getLists',
    method: 'get',
    params:params
  })
}
export function update(params) {
  return Service({
    url: 'update',
    methed:'put',
    params
  })
}
export function delete(params) {
  return Service({
    url: 'delete',
    methed:'delete',
    params:params
  })
}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!