跳到主要内容

扫码登录

  • 便捷登录->用户有第三方平台的账号
  • 快速建档->留留存用户
  • 提供接口安全,降低登录接口的压力与风险
    • 调用的是第三方的平台,不是自己的后台
      • 当扫码通过之后,才会回调自己的后台服务器

扫码登录场景​

  • Oauth2.0,最常见的场景 【公网】
  • 自定义扫码场景 【内网】
    • 客户端请求二维码,后端相应图片
    • 轮询消息给后端,后端返回登录成功/失败
      • 轮询什么内容?
        • 需要一直轮询给后端,用来判断用户是否扫码成功
        • 扫码成功之后,就不再轮询

自定义扫码登录问题​

  • 用户信息从哪里来?码要怎么与用户对应?
    • 一种常见的做法是在用户扫描二维码登录之前,用户已经在你的系统中注册或登录过,系统中保存了用户的相关信息,比如用户ID、用户名、头像等。
    • 当用户扫描二维码时,你的系统会生成一个唯一的标识符(比如一个随机的Token),并将该标识符与用户ID关联起来。这个标识符将被用于后续的验证和查询
  • 为什么要轮询,websocket行不行?
    • 可以使用websocket
    • 用来判断用户是否扫码成功
  • 怎么判断用户是否登录成功?
    • 用户在客户端进行登录操作后,服务器接收到相关请求,验证用户身份,如果验证通过,则将登录状态标记为“成功”,同时返回相应的信息给客户端

Oauth2.0扫码的工作原理​

  • 微信用户