第三方登录梳理

QQ 第三方登录

目的:

优化用户登录体验

流程:

1554641512868.png

按流程 :

用户方面:

  1. 用户 点击 QQ登录 按钮

  2. 用户 扫码二维码

  3. 用户 得到 响应结果

服务器端:

  1. 事先 在腾讯QQ注册, 获取到和网站 对应的 url

  2. 从前端 获取 code(这个 code 是 扫码后 腾讯提供的)

    1. 服务器内部 用 code 向 腾讯请求 获取 Token

    2. 服务器内部 用 Token 向 腾讯请求 获取 OpenID

  3. 通过 OpenID 经过 响应逻辑, 返回给前端 对应数据

响应逻辑

这里, 第六步的逻辑响应, 比较复杂:

1554642498995.png
  • 获取到OpenID 查询 数据库中 该 用户 是否绑定了 我方 账户
  1. 已绑定, 则返回 给 前端 用户的相关信息, 前端 帮助 用户 跳转到 对应页面

  2. 未绑定, 则加密 OpenID 返回给前端, 前端 收到之后, 引导用户跳转到 注册界面,

    1. 前端 将 用户 填写的 用户名、密码、access_token 返回给后端

    2. 后端 通过 用户名 判断 用户是否注册过

      1. 已注册, 则 绑定 这个用户 和 对应的 OpenID

      2. 未注册

        1. 新建 用户

        2. 绑定 这个用户 和 对应的 OpenID

你可能感兴趣的:(第三方登录梳理)