vite 封装axois为request 拦截response返回自定义status
时间: 2024-02-26 13:59:16 浏览: 87
当我们使用 Vite 封装 Axios 时,可以在 response 拦截器中拦截返回的响应数据,并根据需求返回自定义的状态码。以下是一个示例:
```javascript
import axios from 'axios'
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API,
timeout: 5000
})
service.interceptors.request.use(
config => {
// 在请求发送之前做些什么
return config
},
error => {
// 处理请求错误
console.log(error)
return Promise.reject(error)
}
)
service.interceptors.response.use(
response => {
// 在响应数据之前做些什么
const res = response.data
// 判断是否需要自定义状态码
if (res.code !== 200) {
// 返回自定义状态码
return Promise.reject({
status: res.code,
message: res.message
})
}
return res
},
error => {
// 处理响应错误
console.log(error)
return Promise.reject(error)
}
)
export default service
```
在这个示例中,我们在响应拦截器中判断了响应数据的状态码,如果不是 200,则返回一个自定义的状态码和消息。你可以根据自己的需求来定义自己的状态码和消息。
希望这个回答能够帮助你!如果你有其他问题,可以继续问我。
阅读全文