在此次做的项目中,请求后端数据时,需要将token放在请求头中

登陆后将token存入sessionStorage中:

 handleSubmit() {axios.post('/backend/public/admin/login',{'account':this.loginform.user,'password':this.loginform.password}).then(res=>{if(res.data.retcode!=200100){this.$message.error(this.status[res.data.retcode])console.log('登录信息错误')}else{sessionStorage.setItem('userinfo',JSON.stringify(res.data.retstring.userinfo))sessionStorage.setItem('token',res.data.retstring.token)this.$router.push('/banner')this.$message.success("登录成功!")// console.log(res,'登陆成功')}}).catch(err=>this.$message.error("登录失败"+err))

1.刚开始的时候使用:

let token=sessionStorage.getItem('token')
axios.defaults.headers.common['token']=token

但是在使用的过程中发现登录成功后,总会报错,提示token invalid,大致是token过期/无效的意思,无法正常获取数据,必须得刷新一下页面才能获取数据。

使用上面这种方法,其实在还没登录时,已经获取了token,而不是获取的登录成功后返回的token

2.为了获得有效的token,决定使用axios的请求拦截

//service是axios实例
sevice.interceptors.request.use(config=> {// 发送请求的相关逻辑// config:对象  与 axios.defaults 相当// 借助config配置tokenlet token =window.sessionStorage.getItem('token')// 判断token存在再做配置if (token) {config.headers.common["token"]=token}return config}, function (error) {// Do something with request errorreturn Promise.reject(error)})

使用请求拦截,登陆后数据就会正常获取而不需要刷新了。

登录后刷新token相关推荐

  1. Getway jwt 单点登录以及刷新token时间

    Getway jwt 单点登录以及刷新token时间 不用nosql或其他 1.集成jwt pom依赖: <dependency><groupId>io.jsonwebtoke ...

  2. vue中后台管理登录后的token管理

    在做后台管理系统的时候,登录后token管理很重要.上代码,有瑕疵,有待改善,见谅. import Vue from 'vue' import Router from 'vue-router' imp ...

  3. token过期后刷新token并重新发起请求

    系统登录成功后,后端返回token和refreshToken,所有请求都携带token,token如果过期接口将返回401,此时前端需要拿着refreshToken去刷新token,刷新后将拿到新的t ...

  4. .net Core Jwt登录验证刷新Token

    使用 jwt做登录验证的时候,token的过期时间的固定的, 也就是只要经过了一定的时间肯定会过期.有可能用户用着系统就突然提示登录失效了.这里通过在行为结果过滤器Result Filter中刷新To ...

  5. 【自动化测试】解决获取Okta登录后的token问题

    背景: 为公司的项目做自动化,做的是一个regression自动化,将UI和API写在同一个项目里,关键场景的UI cases和全量的API cases. 但是在API中,有个接口是必须要真实用户的t ...

  6. vuex登录后设置token

    第一步: 建立cookie的 添加.设置.和删除 auth.js import Cookies from 'js-cookie'const TokenKey = 'APPMGRID' //APPMGR ...

  7. php token过期,前后端分离项目,token过期,重新登录和刷新token的问题

    这个我刚好在回答后端问题的时候做过详细的解释和方案说明 因为用的是我自己的框架,所以你看token部分的逻辑就好,不需要纠结具体的写法 主要就是checkTokenExpire 和 isTokenAl ...

  8. 微信小程序token过期后重新执行失效的请求封装(用户无感刷新token)

    考虑接口时效性和安全性,后端增设了token验证,确保我们的单个token只使用一次,使用后就立即失效,但是也为了防止在实际进程中异步请求的出现,所以重新封装了请求方法. 要求是在执行某个请求时,如果 ...

  9. axios 登录后设置header_axios如何利用promise无痛刷新token

    需求 最近遇到个需求:前端登录后,后端返回token和token有效时间,当token过期时要求用旧token去获取新的token,前端需要做到无痛刷新token,即请求刷新token时要做到用户无感 ...

  10. Vue中登录验证成功后保存token,并每次请求携带并验证token操作

    在vue中,可以用sessionStorage或localStorage来存储token,也可以用vuex来存储(但要考虑页面刷新数据消失问题,可以在vuex用Storage),下面介绍用localS ...

最新文章

  1. 一览群智胡健:在中国完全照搬Palantir模式,这不现实
  2. 【深度学习】图像输入网络必要的处理流程
  3. MyEclipse 中自动安插作者、注释日期等快捷键方法
  4. [原]让链接点击过后无虚线
  5. 线性表15|魔术师发牌问题和拉丁方阵 - 数据结构和算法20
  6. python变量分配内存_Python | 声明任何变量而不分配任何值
  7. matlab程序svm四等级分类,支持向量机(SVM)多分类matlab程序代码
  8. 在每趟长途的HTML5挑运之后
  9. 【shell编程基础0】bash shell编程的基本配置
  10. unix/linux命令参考
  11. php alert弹出框位置,jQuery_基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果),原理很简单: 获取当前屏幕( - phpStudy...
  12. Vue+MDUI+Muse-UI的使用与安装
  13. 公司-广告-分众传媒:分众传媒
  14. 游戏技巧-《文明6》的C盘爆满问题
  15. Package pdftex.def Error: PDF mode expected, but DVI mode detected!
  16. SNH48周边商品抢购分析
  17. 一道小学数学问题的编程解法
  18. 谷歌chrome安卓版_谷歌Chrome安卓版测试全新共享界面:二维码和截图来了
  19. 普歌-(mac m1亲身教程)iterm配置oh-my-zsh以及iterm配置dracula主题
  20. CSL分苹果 小埋与扫雷 Doors Breaking and Repairing Key Set Balanced Ternary String

热门文章

  1. ASP,PHP,ASPX生成静态页大全
  2. 微信小助手 mac版功能
  3. 高阶篇:4.1.2.2)产品部件级别的QFDII
  4. RoaringBitmap
  5. 2022-2027年中国双摄像头手机行业发展监测及投资战略研究报告
  6. GC overhead limit exceeded
  7. BZOJ 2827 千山鸟飞绝 Treap
  8. python命令行参数是什么
  9. 2022年虾皮开店(shopee入驻)最新教程!
  10. Promise中then的返回值