微博授权第三方网站登录

大致流程如下图所述

0

前置工作#

去微博开放平台上(https://open.weibo.com/)申请网站接入

0


审核通过后会给你的应用分配 App Key 和 App Secret (后续根据授权码获取access_token需要用到这个东西)

0


填写用户授权成功后的回调地址

0


1、点击社交登录按钮#

0

社交按钮链接是第三方授权页

0


2、跳转到微博的授权页面#

0


3、扫码登录后,跳转到回调页面,并且携带一个授权码#

http://auth.gulimall.com:20000/oauth2.0/weibo/success?code =xxxxxxxx


4、在回调接口中,通过授权码,获取access_token,然后通过access_token,可以访问微博开放的相关接口#

Map<String, String> map = new HashMap<>();
map.put("client_id", "2362606657");
map.put("client_secret", "78533622143269d1728d3ae6fdbd8c67");
map.put("grant_type", "authorization_code");
map.put("redirect_uri", "http://auth.gulimall.com:20000/oauth2.0/weibo/success");
map.put("code", code);
HttpResponse response = HttpUtils.doPost("https://api.weibo.com", "/oauth2/access_token", "post", new HashMap<>(), null, map);


5、在微博授权第三方应用登录时,通过access_token,去获取微博用户的相关信息,进行集成登录,相关代码自己随意实现#

【注意】如果微博社交用户未注册,则进行注册并登录;如果注册了,则直接进行登录

下图可以看到,确实是以微博的用户进行登陆了

0

并且数据库中,确实生成了一条用户记录

image



相关代码可以参考: https://gitee.com/houchen1996/gulimall  下的gulimall-auth-server

posted @   青岑  阅读(417)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示
主题色彩