vue 中axios二次封装post
时间: 2023-11-15 21:59:29 浏览: 86
vue axios基于常见业务场景的二次封装的实现
5星 · 资源好评率100%
在Vue项目中,我们通常使用axios来进行接口请求。为了方便管理和使用,我们可以对axios进行二次封装。下面是一个对axios进行二次封装的例子:
1.首先,我们需要引入axios和需要用到的组件,比如element-ui中的ElMessage组件。
2.然后,我们需要创建一个axios实例,并设置基准地址和超时时间。
3.接下来,我们可以对请求进行拦截,比如在请求拦截中添加一些请求头信息,或者在响应拦截中对返回的数据进行处理。
4.最后,我们需要导出这个axios实例,以便在需要的地方使用。
下面是一个对axios进行二次封装的post请求的例子:
```
// 引入axios和需要用到的组件
import axios from 'axios'
import { ElMessage } from 'element-plus'
// 创建一个axios实例
const api = axios.create({
baseURL: 'http://localhost:3000', // 基准地址
timeout: 5000 // 超时时间
})
// 请求拦截
api.interceptors.request.use(
config => {
// 在请求头中添加token等信息
config.headers.Authorization = localStorage.getItem('token')
return config
},
error => {
return Promise.reject(error)
}
)
// 响应拦截
api.interceptors.response.use(
response => {
// 对返回的数据进行处理
const { data } = response
if (data.code === 200) {
ElMessage.success(data.msg)
return data.data
} else {
ElMessage.error(data.msg)
return Promise.reject(data.msg)
}
},
error => {
return Promise.reject(error)
}
)
// 导出axios实例
export default api
```
阅读全文