在实际开发中前端登录成功我们将服务器返回的Token保存到Cookie中,为后续与服务器交互做验证!但有时后端没有做相关的逻辑编写无法从Cookie中取到Token,这时前端就需要在request请求拦截中!!!首先先我们需要在登...
在实际开发中前端登录成功我们将服务器返回的Token保存到Cookie中,为后续与服务器交互做验证!但有时后端没有做相关的逻辑编写无法从Cookie中取到Token,这时前端就需要在request请求拦截中!!!
首先先我们需要在登录接口成功后将返回的Token保存在localStorage、sessionStorage中我这边是保存在localStorage。同时我我在Cookie进行了Token保存!请看代码
????handleLogin()?{ ??????this.$refs.loginFormRef.validate(async?valid?=>?{ ????????//?console.log(valid); ????????if?(!valid)?return ????????const?res?=?await?api.login(this.form) ????????if?(res.code?===?'0000')?{ ??????????window.localStorage.setItem('userName',?this.form.username) ??????????window.localStorage.setItem('access_token',?res.data.access_token) ? ??????????document.cookie?=?'access_token='?+?res.data.access_token ??????????setTimeout(()?=>?{ ????????????this.$router.push({ ??????????????path:?`/view/Home` ????????????}) ??????????},?500) ????????}?else?{ ??????????return?this.$message.error(res.msg) ????????} ??????}) ????} validate为el-form表单验证 完成第一步我们就要在request请求拦截中为请求头添加Token //请求拦截 api.interceptors.request.use( ??req?=>?{ ????//?在发送请求前要做的事儿 ????req.headers.access_token?=?localStorage.getItem('access_token') ????return?req ??}, ??err?=>?{ ????//?在请求错误时要做的事儿 ????//?该返回的数据则是axios.catch(err)中接收的数据 ????return?Promise.reject(err) ??} ) api 是我创建的axios实例,可替换
沃梦达教程
本文标题为:vue 请求拦截request将token添加到请求头headers
基础教程推荐
猜你喜欢
- 使用ajax跨域调用springboot框架的api传输文件 2023-02-23
- uniapp开发微信小程序自定义顶部导航栏功能实例 2022-10-21
- 关于Ajax跨域问题及解决方案详析 2023-02-23
- HTML clearfix清除浮动讲解 2022-11-20
- 在实战中可能碰到的几种ajax请求方法详解 2023-02-01
- Javascript Bootstrap的网格系统,导航栏和轮播详解 2023-08-11
- JS滚动到顶部踩坑解决记录 2023-07-10
- Ajax+smarty技术实现无刷新分页 2022-12-15
- Ajax发送和接收请求 2022-12-15
- cocos creator游戏实现loading加载页面,游戏启动加载动画 2022-10-29