[软件设计/软件工程] 使用 JWT 管理多个设备节点 js 的用户会话

[复制链接]
发表于 2022-5-5 09:14:17
问题
我正在制作一个使用 JWT 来维护会话的应用程序。当任何新用户注册时,我会为用户提供一个 JWT 令牌并将其存储在我的数据库和用户的浏览器中。当用户注销时,我会从浏览器和数据库中删除该令牌。

但我想,如果用户从多个设备登录,那么它将从一个设备而不是另一个设备注销。我怎样才能做到这一点?

回答
首先,JWT 应该不能“注销”。但是会自动过期,这就是为什么你应该设置一个短的 expiresIn 时间。

这是因为在 JWT 中,会话由客户端处理,服务器不负责注销用户,但用户丢弃了 JWT。

在您的情况下,我假设您在允许用户之前检查数据库是否存在 JWT,因此您只需要搜索并删除与该帐户关联的其他 JWT。

但是,如果您想保持干净,请接受 JWT 的逻辑:设置较短的生命周期并等待它们过期。





上一篇:用Python中的gzip读取原始压缩字节
下一篇:添加格式为 dd:HH:mm:ss 的日期

使用道具 举报

Archiver|手机版|小黑屋|吾爱开源 |网站地图

Copyright 2011 - 2012 Lnqq.NET.All Rights Reserved( ICP备案粤ICP备14042591号-1粤ICP14042591号 )

关于本站 - 版权申明 - 侵删联系 - Ln Studio! - 广告联系

本站资源来自互联网,仅供用户测试使用,相关版权归原作者所有

快速回复 返回顶部 返回列表