原理也是很简单,我们登录之后的token都会存在redis,当用户请求接口的时候会携带token,如果redis有该token就允许请求,否则返回401,这里我们只要将其他token给去了,只留当前用户的token。
顺便通知其他用户下线。
其他用户会收到下线消息。
四、自动刷新token自动刷新token,也叫无感刷新,因为我们使用的是token认证,但是token又是无状态的,token到期之后携带请求会报401错误,如果用户用的好好的突然需要重新登录,那么用户体验就不是很好,所以我们需要系统后台刷新token,而因为我们使用的Furion框架,可以非常容易的实现该功能。
4.1 后端登录部分当用户登录成功之后,返回 accessToken 字符串,之后通过 JWTEncryption.GenerateRefreshToken() 获取 刷新Token,并通过响应报文头返回,用户登录成功之后把 accessToken 和 refreshToken 一起返回给客户端存储起来。