记录一下目前使用的一种双token的实现方式

1.背景

       后端使用的是.net core 加jwt的形式。然后为了不过期使用了双token的模式。

       认证方式是Bearer  头文件里必须加Authorization,目前还没弄懂怎么改变这个头文件。

2.实现方式

         因为用的.net core自带的认证方式,不是自己定义的拦截器,所以每次认证都是需要传Authorization。

         第一步:登录的时候传token和refreshToken到前端。

         第二步:token过期,后端返回401给前端,前端接收到401,重新再获取请求。

                       并将保存在本地的refreshToken赋值给Authorization,并在头文件里加上type=refreshToken

         第三步:如果refreshToken没有过期,重新生成Token和refreshToken返回给前台,重新赋值。

                       如果refresh Token已经过去,后台在头文件里加type=refreshToken并返回401,表示跳转到登录页面。

 

3.后记

         这种方式当然不是最好的,我查的资料感觉大多也是自定义的拦截器。IdentityServer4好像很符合要求。但认证方式太多,还没完全弄懂,下次再做个好的笔记了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值