vue3前端开发-小兔鲜项目-路由拦截器增加token的携带

vue3前端开发-小兔鲜项目-路由拦截器增加token的携带!实际开发中,很多业务接口的请求,都要求必须是登录状态!为此,这个token信息就会频繁的被加入到了请求头部信息中。request请求头内既然需要频繁的携带这个token.我们就可以把它配置一下。添加到路由拦截器内。


1:修改一下,路由拦截器的代码内容。

复制代码
//axios基础的封装
import axios from "axios";
import { ElMessage } from 'element-plus'
import 'element-plus/theme-chalk/el-message.css'
import { useUserStore } from '@/stores/user';


const httpInstance = axios.create({
    baseURL:'http://pcapi-xiaotuxian-front-devtest.itheima.net',
    timeout:5000
})
//axios请求拦截器
httpInstance.interceptors.request.use(
    config =>{
        // 1. 从pinia获取token数据
        const userStore = useUserStore()
        // 2. 按照后端的要求拼接token数据
        const token = userStore.userInfo.token
        if (token) {
            config.headers.Authorization = `Bearer ${token}`
    }
        return config
    },e => Promise.reject(e)
)
//axios响应拦截器
httpInstance.interceptors.response.use(
    res => res.data,
    e =>{
        ElMessage({
            type:'warning',
            message:e.response.data.message
        })
        return Promise.reject(e)
    }
)
export default httpInstance

2:主要是做了一个简短的配置。

如图,从pinia中获取这个token。然后安装后端工程师的要求去拼接token。

题外话:每个公司,都有自己公司特殊定义的要求格式。所以,到时候询问后端开发人员,就知道,该如何拼接token字符串了。


3:测试一下效果如何。

如图,所示,无论是哪个接口调用,都自动拼接带着这个拼接完成后的token信息了。

相关推荐
卸任2 小时前
Electron霸屏功能总结
前端·react.js·electron
fengci.2 小时前
ctfshow黑盒测试前半部分
前端
忆琳2 小时前
Vue3 优雅解决单引号注入问题:自定义指令 + 全局插件双方案
vue.js·element
忆琳2 小时前
Vue3 全局自动大写转换:一个配置,全站生效
javascript·element
喵个咪2 小时前
Headless 架构优势:内容与展示解耦,一套 API 打通全端生态
前端·后端·cms
小江的记录本2 小时前
【JEECG Boot】 JEECG Boot——数据字典管理 系统性知识体系全解析
java·前端·spring boot·后端·spring·spring cloud·mybatis
喵个咪3 小时前
传统 CMS 太笨重?试试 Headless 架构的 GoWind,轻量又强大
前端·后端·cms
chenjingming6663 小时前
jmeter导入浏览器上按F12抓的数据包
前端·chrome·jmeter
张元清3 小时前
不用 Server Components 也能做 React 流式 SSR —— 实战指南
前端·javascript·面试