VUE axios的安装和使用及封装

该代码段展示了如何使用axios库进行网络请求配置,包括设置基础URL,内容类型,以及请求和响应拦截器。请求拦截器中,检查本地存储的token并添加到headers中用于认证。响应拦截器处理401未授权的情况,提示用户登录并跳转至登录页面。同时,它还处理错误信息展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

路径src/network/request.js

import axios from ‘axios’;
import {Notify, Toast} from ‘vant’;
import router from ‘…/router’
axios.defaults.baseURL = “http://localhost:3000/users/”; // 关键步骤–填写后台请求统一的地址
axios.defaults.headers.post[‘Content-Type’] = ‘application/x-www-form-urlencoded’;
export function request(config){
const instance = axios.create({
baseURL:‘https://192.168.5.6’,
timeout:5000
});
//请求拦截
instance.interceptors.request.use(config=>{
// 如果API需要认证, 在这统一设置
const token = window.localStorage.getItem(‘token’);
if(token) {
config.headers.Authorization = ‘Bearer ‘+token;
}
return config;
}, err=>{
})
//响应拦截
instance.interceptors.response.use(res=>{
return res.data ? res.data : res;
}, err=>{
// 如果没有授权, 去login
if(err.response.status == ‘401’) {
Toast.fail(‘请先登录’)
router.push({path:’/login’})
}
// 如果有错误, 在这里可以提示
// Notify(err.response.data.errors[Object.keys(err.response.data.errors)[0]][0]);
Notify(err.response.data.errors[Object.keys(err.response.data.errors)[0]][0])
})
return instance(config)
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海澜明月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值