聚合登录是什么?
聚合登录,就是利用用户在第三方平台上已有的账号来快速完成自己应用的登录流程。这里的第三方平台,是指QQ、微信等平台。通过聚合登录API接口,你的网站可以登录获取相应的用户信息和授权信息,例如openid、用户昵称、头像等。
支持的登录方式
支持 | |||||
---|---|---|---|---|---|
微信小程序 | 微博 | 百度 | 钉钉 | GitHub | |
Gitee 华为 | Gitlab | 阿里云 | 支付宝 | 小米 | 开源中国 |
领英 | 微信 | 企业微信 | 飞书 | 微软 | 钉钉V2 coding |
准备工作
连接检测
请在你的服务器上ping sso.gumengya.com,保证网站和授权的连接畅通。
PS C:\Users\w9206> ping sso.gumengya.com
正在 Ping mfnv6-df-sched.jcloudimg.com [240e:c2:1800:129:8000::3] 具有 32 字节的数据:
来自 240e:c2:1800:129:8000::3 的回复: 时间=7ms
来自 240e:c2:1800:129:8000::3 的回复: 时间=7ms
来自 240e:c2:1800:129:8000::3 的回复: 时间=7ms
来自 240e:c2:1800:129:8000::3 的回复: 时间=7ms
240e:c2:1800:129:8000::3 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 7ms,最长 = 7ms,平均 = 7ms
PS C:\Users\w9206>
登录方式对应目录
登录方式 | 目录 |
---|---|
微博 | |
百度 | baidu |
钉钉 | dingtalk |
钉钉 V2版本 | dingtalkV2 |
Gitee码云 | gitee |
Github | github |
华为 | huawei |
Gitlab | gitlab |
阿里云 | aliyun |
支付宝 | alipay |
小米 | mi |
开源中国 | oschina |
领英 | |
微信 | weixins |
企业微信 | qiyeweixin |
飞书 | feishu |
微软 | microsoft |
coding | coding |
获取登录链接
引导用户到登录连接
基本信息
接口URL:https://sso.gumengya.com/{登录目录}/redirect?redirect_url=http://127.0.0.1/callback
请求方式:GET
请求参数
Query参数及说明
参数名 | 示例值 | 参数类型 | 是否必填 | 参数描述 |
---|---|---|---|---|
redirect_url | http://127.0.0.1/callback | Text | 是 | 回调链接(建议urlencode) |
响应示例
成功响应示例
跳转到授权链接
RESTFul获取登录链接
基本信息
接口URL:https://sso.gumengya.com/api
请求方式:POST
Content-Type:multipart/form-data
请求参数
body参数及说明
参数名 | 示例值 | 参数类型 | 是否必填 | 参数描述 |
---|---|---|---|---|
action | url | Text | 是 | 必填参数,系统参数 |
site | gitee | Text | 是 | 快捷登录站点目录 比如 gitee |
redirect_url | http://127.0.0.1/callback | Text | 是 | 回调链接(建议urlencode) |
响应示例
成功响应示例
{
"code": 1,
"msg": "success",
"url": "https://gitee.com/oauth/authorize?client_id=9bccec32b4d24e3c10b38b0a8c221714e9f3525168d66297548292e533339184&redirect_uri=https%3A%2F%2Fsso.gmit.vip%2Fgitee%2Fcallback&response_type=code&scope=user_info&state=5e4150582190db8903718ef59eabbe34",
"width": "1198",
"height": "737",
"state": "5e4150582190db8903718ef59eabbe34"
}
失败响应示例
{
"code": 0,
"msg": "login method does not exist",
"url": ""
}
获取openid用户信息
基本信息
- 接口状态:
已完成
- 接口URL:
https://sso.gumengya.com/api
- 请求方式:
POST
- Content-Type:
multipart/form-data
请求参数
body参数及说明
参数名 | 示例值 | 参数类型 | 是否必填 | 参数描述 |
---|---|---|---|---|
action | info | Text | 是 | 必填参数,系统参数 必须是info |
code | fed6b2675c02aa7870a15a10a3222a3a | Text | 是 | 上一步获取的授权码 回调来的 code |
响应示例
成功响应示例
数据已脱敏
{
"code": 1,
"msg": "success",
"data": {
"nickname": "故梦",
"mobile": "",
"email": "",
"sex": "未知",
"address": "",
"avatar": "https://portrait.gitee.com/uploads/avatars/user/490/1470292_sikymc_1612442942.png",
"url": "https://gitee.com/isgm",
"openid": "36AH1FJQ6qNs4cada66c20b9ba42067c9eba22e4556f",
"app": "gitee"
}
}
失败响应示例
{
"code": 0,
"msg": "authorization code Has expired"
}
2 comments
接口不错,晚上试试,感谢站长。
hhh