整体调用流程:
- 设置appkey、异步通知地址和回调地址获取授权链接和state参数
- 用户完成授权回调路由
- 查询用户信息成功后向指定的异步通知地址发送POST请求,包含openid、头像、昵称参数
4、回调路由自动跳转至指定的回调地址,且链接中附带state参数
接口说明:
一、获取授权地址接口
链接:https://www.zdjlales.de5.net/oauth/state.php
必填请求参数:
- appkey:调用路由的密钥凭证
- notify_url:指定的异步通知地址
- return_url:指定的回调地址
示例返回:
{
"code": 200,
"msg": "success",
"data": {
"auth_url": "https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=10*********4&redirect_uri=https%3A%2F%2Foauth.zdjlales.netlib.re%2Foauth%2Fredirect.php&state=c35e011f25c661bbb8100470348b286d",
"state": "c35e011f25c661bbb8100470348b286d"
},
"sign": "da9d2bd5444793dfffc583810d9bbbea92250c720ad63dacc0151fa82bb29b1f"
}
创建授权链接成功后,数据库会记录state的值并与创建它时使用的appkey绑定
二、回调路由接口
这一接口会在用户授权成功后自动跳转至该链接,且自动挂载code和state参数。
链接:https://www.zdjlales.de5.net/oauth/redirect.php
必填请求参数:
- code:授权码(回调时自动生成,无需填写)
- state:授权请求ID(回调时自动生成,无需填写)
示例返回:无
示例跳转回return_url:https://www.zdjlales.de5.net/oauth/redirect.php?code=8a5a67f40b6ffcea7&state=c35e011f25c661bbb8100470348b286d
三、回调处理接口
此接口由上面的回调路由自动调用,无需手动调用
链接:https://www.zdjlales.de5.net/oauth/callback.php
必填请求参数:
- code:授权码(自动调用,无需填写)
- state:授权请求ID(自动调用,无需填写)
示例同步返回内容:
{
"return_url": "https://oauth.zdjlales.de5.net/oauth/query.php"
}
示例通知至notify_url:
{
"code": 200,
"msg": "查询成功",
"data": {
"state": "5c4c25daf11f0d2b2c6b11cfaa0fad10",
"openid": "5*******************CD",
"nickname": "**",
"avatar": "http://thirdqq.qlogo.cn/ek_qqapp/W*****************kew/0",
"timestamp": "1762977759"
},
"sign": "109439690b5100888a5a67f40b6ffcea7fd216886b15a163504c218dfbe2f86d"
}
四、查询授权接口
链接:https://www.zdjlales.de5.net/oauth/query.php
必填请求参数:
- appkey:调用路由的密钥凭证,须与state绑定的appkey保持一致
- state:授权请求ID
示例返回:
{
"code": 200,
"msg": "查询成功",
"data": {
"state": "5c4c25daf11f0d2b2c6b11cfaa0fad10",
"status": "completed",
"openid": "5*******************CD",
"nickname": "**",
"avatar": "http://thirdqq.qlogo.cn/ek_qqapp/****************kew/0",
"created_at": "2025-11-12 20:00:47",
"updated_at": "2025-11-12 20:01:06"
},
"sign": "109439690b5100888a5a67f40b6ffcea7fd216886b15a163504c218dfbe2f86d"
}
建议根据业务实际需求对收到的响应内容进行验签处理,详情可查看签名验签说明