聚合登录介绍
利用用户在第三方平台上已有的账号来快速完成自己应用的登录流程。这里的第三方平台指QQ、微博、支付宝、百度等平台。通过本站的聚合登录接口,你的网站可以登录获取相应的用户信息和授权信息,例如uid、token、用户昵称、头像等。本站的聚合登录完全符合OAuth2.0身份鉴权机制。
接口协议规则
传输方式:
HTTP
数据格式:
JSON
字符编码:
UTF-8
聚合登录流程
Step1:获取跳转登录地址
请求URL:https://u.sumt.cn/connect.php?act=login&appid={appid}&appkey={appkey}&type={登录方式}&redirect_uri={回调地址}
登录方式对应值:
| 对应值 | 登录方式名称 |
|---|---|
| QQ | |
| alipay | 支付宝 |
| 微博 | |
| baidu | 百度 |
| huawei | 华为 |
| dingtalk | 钉钉 |
| microsoft | 微软 |
| gitee | Gitee |
| github | GitHub |
请求返回格式:
{
"code": 200,
"msg": "succ",
"type": "qq",
"url": "https://graph.qq.com/oauth2.0/XXXXXXXXXX"
}
返回参数说明:
| 参数名 | 参数类型 | 参数说明 | 参数示例 |
|---|---|---|---|
| code | int | 返回状态码 | 200为成功,其它值为失败 |
| msg | string | 返回信息 | 返回错误时的说明 |
| type | string | 登录方式 | |
| url | string | 登录跳转地址 | https://graph.qq.com/oauth2.0/XXXXXXXXXX |
| qrcode | string | 登录扫码地址 | 此地址仅微信和支付宝返回 |
Step2:跳转到登录地址
登录地址为上一步返回的url值。
Step3:登录成功会自动跳转到指定的redirect_uri,并跟上Authorization Code
例如回调地址是:https://auth.example.com/connect.php,则会跳转到:https://auth.example.com/connect.php?type=qq&code=520DD95263C1CFEA0870FBB66E******
Step4:通过Authorization Code获取用户信息
请求URL:https://u.sumt.cn/connect.php?act=callback&appid={appid}&appkey={appkey}&type={登录方式}&code={code}
请求返回格式:
{
"code": 200,
"msg": "succ",
"type": "qq",
"access_token": "15DB85DF5AD019EB39494F172E74144C",
"social_uid": "0D4D7971676006E65C5F82341DB793FD",
"faceimg": "https://thirdqq.qlogo.cn/g?b=oidb&k=3WrWp3peBxlW4MFxDgDJEQ&s=100&t=1596856919",
"nickname": "SUMT悠咪",
"location": "XXXXX市",
"gender": "男",
"ip": "1.12.3.40"
}
返回参数说明:
| 参数名 | 参数类型 | 参数说明 | 参数示例 |
|---|---|---|---|
| code | int | 返回状态码 | 200为成功,203为未完成登录,其它值为失败 |
| msg | string | 返回信息 | 返回错误时的说明 |
| type | string | 登录方式 | |
| social_uid | string | 第三方登录UID | 0D4D7971676006E65C5F82341DB793FD |
| access_token | string | 第三方登录token | 15DB85DF5AD019EB39494F172E74144C |
| faceimg | string | 用户头像 | https://thirdqq.qlogo.cn/g?...... |
| nickname | string | 用户昵称 | SUMT悠咪 |
| gender | string | 用户性别 | 男 |
| location | string | 用户所在地 | XXXXX市 |
| ip | string | 用户登录IP | 1.12.3.40 |
获取用户信息接口
在用户登录后的任意时间,可以请求以下接口再次查询用户的详细信息。
请求URL:https://u.sumt.cn/connect.php?act=query&appid={appid}&appkey={appkey}&type={登录方式}&social_uid={social_uid}
social_uid:用户的第三方登录UID,用于识别用户的唯一字段。
请求返回格式:
{
"code": 200,
"msg": "succ",
"type": "qq",
"access_token": "15DB85DF5AD019EB39494F172E74144C",
"social_uid": "0D4D7971676006E65C5F82341DB793FD",
"nickname": "SUMT悠咪",
"faceimg": "https://thirdqq.qlogo.cn/g?b=oidb&k=3WrWp3peBxlW4MFxDgDJEQ&s=100&t=1596856919",
"location": "XXXXX市",
"gender": "男",
"ip": "1.12.3.40"
}
返回参数说明:
| 参数名 | 参数类型 | 参数说明 | 参数示例 |
|---|---|---|---|
| code | int | 返回状态码 | 200为成功,其它值为失败 |
| msg | string | 返回信息 | 返回错误时的说明 |
| type | string | 登录方式 | |
| social_uid | string | 第三方登录UID | 0D4D7971676006E65C5F82341DB793FD |
| access_token | string | 第三方登录token | 15DB85DF5AD019EB39494F172E74144C |
| nickname | string | 用户昵称 | SUMT悠咪 |
| faceimg | string | 用户头像 | https://thirdqq.qlogo.cn/g?...... |
| gender | string | 用户性别 | 男 |
| location | string | 用户所在地 | XXXXX市 |
| ip | string | 用户登录IP | 1.12.3.40 |
SDK下载
SDK版本:1.0