微博第三方登录的 实现步骤
第三方登录实现步骤:
第三方登录授权的流程:
1.说出是前端访问我们自己的定义url,然后在我们自己的后台去调用第三方后台给的url,把后端生成的url返回给前端,也就是登录页面,
2.前端使用location.href重定向获取code,
3.拿着获取的code去获取的access_token,(微博使用post,qq使用post,get都可以),
4.拿着access_token去获取用户openid或uid(唯一id),
5.判断我们用户表是不是有uid或openid,如果没有返回给用户绑定页面,
6.判断输入的用户名和密码是否存在,
7.不存在,创建用户,并保存到user表和第三方表,
8.存在,则直接关联,
第一步:
微博开放平台 https://open.weibo.com 进行注册:
第二步:
点击微博先请求我们自定义的接口,
注意我们的回调地址!!!
生成这个url之后 需要返回到前端进行 微博登录页面的展示例如:
当微博账号验证登录之后,我们的回调地址 就起到作用了,这个绑定页面会立马展现,页面加载瞬间把code 发送后台,来我们接着看。
来我们顺着来到后台
我们再一次向微博平台 发起post请求,主要是为了取用户uid,
取到uid 之后 我们先到第三方表里进行判断该用户是否存在,如果该用户存在,则直接把token等信息返回到前端,直接登录即可。
来 我们看看前端 是如何处理这个数据的,正常重定向主页 即可。
如果该 用户第一次登录,来我们接着看逻辑
生成token 直接返回前端,
我们看看前端如果处理回复,下面是个if 判断 ,控制我们的绑定页面输入框的展示。
当用户把点击保存之后,我们看看url请求,
我们接着看后台,直接来到了apiview 的post请求进行逻辑判断,
在上面的序列化器中 我们先判断的 是用户携带的token,是否合法,然后再进行短信验证码的判断。
重点看看这里 ,我们先去user表里,也就是 我们第三方登录的表关联的user表 判断该用户的 密码。
当我们 取到user信息之后,直接进行user表的保存,以及第三方标的信息保存。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现