第三方登录流程代码实现及流程图分析

目录

1.oauth认证原理

 2.第三方登录与本地登陆的关联(三种情况)

情况1: 本地未登录,第一次登录第三方

2.2 情况2:本地未登录,再次登录第三方

2.3 情况3:本地登录,并绑定第三方

3.1 前端获取认证code

3.2 获取微博access_token

3.3 获取微博用户基本信息并保存到数据库

3.4 生成token给Vue


1.oauth认证原理

  • OAuth是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源,而无需将用户名和密码提供给第三方应用。

  • OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。

  • 这个code如果能出三方换取到数据就证明这个用户是三方真实的用户

 2.第三方登录与本地登陆的关联(三种情况)

2.1

情况1: 本地未登录,第一次登录第三方

此时相当于注册,直接把第三方信息拉取来并注册成本地用户就可以了,并建立本地用户与第三方用户(openid)的绑定关系

2.2 情况2:本地未登录,再次登录第三方

此时用户已注册,获取到openid后直接找出对应的本地用户即可

2.3 情况3:本地登录,并绑定第三方

这个只要将获取到的openid绑定到本地用户就可以了

3.第三方微博登录流程图

3.1 前端获取认证code

  • 1.在Vue页面加载时动态发送请求获取微博授权url

  • 2.flask收到请求的url后,通过微博应用ID(client_id)和回调地址(redirect_uri)动态生成授权url返回给Vue

  • 3.当用户点击上面的url进行扫码,授权成功会跳转我们的回调界面并附加code参数

  • 4.Vue获取到微博返回的code后,会 将code发送给flask后端 (上面的redirect_uri)

3.2 获取微博access_token

  • 后端获取code后,结合client_id、client_secret、redirect_uri参数进行传递,获取微博access_token

3.3 获取微博用户基本信息并保存到数据库

  • 使用获得的acce

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值