关注牛哥公众号:牛牛码特,回复:1,即可获得秋招大礼包
面经统计表/Java Top100面试题/秋招企业投递表
扫码登录的设计思路是通过Ticket关联PC与手机,通过 JWT 验证手机身份,通过长连接推送凭证,要点就两个:安全性和服务端推送。

下面,我们来展开讲解扫码登录的详细流程:
https://xxx.com/login/scan?ticket=xxx),通过前端库(如 qrcode.js)生成二维码并展示。未扫码/已扫码待确认/已确认/已过期)。scan_login:ticket:xxx{status: "unscanned", pcDeviceId: "xxx", createTime: "xxx"}pending_confirm(已扫码待确认),并关联用户ID(如 userId: 123)。confirmed(已确认);Ticket 与 PC端登录凭证 绑定(供PC端后续获取)。wx.scanCode、APP原生扫码SDK)解析二维码中的URL,提取 token。Ticket 和手机端的 JWT 。Ticket 和 Token)。安全保障:
长连接推送的要点:
user:123 → { gateway: "gateway1", channels: ["chat"] }。业务服务器需要向某个用户推送消息时先查 redis 取出网关信息,然后向对应的网关发送 rpc 请求即可。
