如何设计 多端登录 token 问题

2022-09-16 15:23:54 +08:00
 hhhhhh123

场景: 一个 qq 在手机上只能登录一次, 换个手机登录就会被挤下线
但是我的需求是: 多开 qq , 然后可以登录自己的 qq ,qq 都可以同时在线。消息互通,然后设置多开登录的数量, 如 3 次就是一个账号只能同时在线量为 3.
突然想到 其实就是 腾讯视频 这种。
那么这种的话, 这个登录 token 应该如何设计好一点?
都用同一个 token ?
然后记录 token 数量进行判断是否超出限制 ? 还是不同的 token ,计算用户 id 不同的 token 数量?
还要考虑 token 续签 问题。。。。
人麻了。。。

1809 次点击
所在节点    程序员
6 条回复
IvanLi127
2022-09-16 16:12:15 +08:00
token 弄成一样的就是给自己找麻烦,所以要弄成不一样的。剩下后端在登录时计数呗,就保留最新的 x 个 token 有效,其他的作废。至于其他的,应该和多终端就没啥关系了。
c332030
2022-09-16 17:58:46 +08:00
套一层,第一层 token 保存登录状态,多开的 token 关联第一层 token ,咋样
KyleLrz
2022-09-16 18:14:33 +08:00
token 一致,记录登录 log 。超过 3 把最早的踢了(登录校验一下数量)。。一般 token 同一个用户同一时间段不同的话其实问题会挺多的
PungentSauce
2022-09-16 18:48:40 +08:00
token 加个 device 参数就行,
qfdk
2022-09-17 02:56:21 +08:00
多终端 肯定要多 token. 你发消息 只要监听账号接受信息就好了, 比如这个用户 abcd ,你只要监听 abcd 接受消息的事件就好了. 登录一个 监听一个 跟你 token 没啥关系啊…… 续签也不难啊 你获取 token 的时候就知道 token 啥时候失效了 失效前 10s 续签就可以了
xuanbg
2022-09-17 10:49:12 +08:00
能不能多端登录,能不能多开,能开几个,这些是账号设置问题,和 token 有什么关系?根据用户 id 能找到发出去的 token ,能知道是发给什么端的就行了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/880590

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX