POST
/auth/oauth2开放/回调App小程序授权登录
平台与系统 / 登录鉴权
基本信息
- 接口状态开放/回调用(服务端) 免鉴权
- 接口URLPOST
https://dscp-dev.hn12301.net/open-api/auth/oauth2 - 请求方式
POST - Content-Type
application/json - 暴露渠道开放/回调、App 前缀
/open-api - 名称来源源码注释
- 调用方本次扫描未发现调用
- 需求上下文
- 维护人 / 最后改动luoli 2024-04-10
- 读写数据表
card_bind、system_oauth2_access_token反查该表全部接口 → - 控制器
com.jxxx.dscp.api.controller.auth.AuthController#oauth2 - 源码位置
jxxx-dscp/dscp-service-business/src/main/java/com/jxxx/dscp/api/controller/auth/AuthController.java:685 - 判定依据
请求参数
Header 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无(渠道统一鉴权头见《认证方式》) | ||||
Query 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
路径参数及说明
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
Body 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| code | … | 是 | String | |
| encryptedData | … | 是 | String | |
| iv | … | 是 | String |
认证方式
响应参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| userId | … | 否 | Long | 登录用户id → system_oauth2_access_token.user_id |
| openId | … | 否 | String | 用户OPENID → member.open_id |
| mobile | … | 否 | String | 手机号 → member.mobile |
| accessToken | … | 否 | String | 访问令牌 → system_oauth2_access_token.access_token |
| refreshToken | … | 否 | String | 刷新令牌 → system_oauth2_access_token.refresh_token |
| expiresTime | … | 否 | Date | 过期时间 → card_bind.expires_time |
响应示例
成功响应示例
{
"errcode": 0,
"errmsg": "",
"data": {
"userId": "1",
"openId": "\"string\"",
"mobile": "\"string\"",
"accessToken": "\"string\"",
"refreshToken": "\"string\"",
"expiresTime": "\"2026-01-01 00:00:00\""
}
}失败响应示例
{
"data": null,
"可能返回": [
{
"errcode": "10006",
"errmsg": "小程序授权错误"
},
{
"errcode": "99999",
"errmsg": "服务内部错误"
}
]
}附录 · 实现细节
调用链 / 数据表 / 调用点证据 / 源码注释 / 逻辑摘要
涉及数据表:card_bind、system_oauth2_access_token 反查全部引用接口 →
- AuthController#oauth2
- BeanUtils.map → LoginResponse
其它依赖:MPConfig.getMpAppId、MPConfig.getMpAppSecret、MemberService.getMember、ChaosTransactionTemplate.execute、CardBindService.updateList、Oauth2AccessTokenService.createAccessToken、Oauth2ClientService.mustGet、AuthService.setAuthAccId
逻辑摘要:查询详情(WeixinUtils.getJsCode2AccessToken);查询详情(memberService.get);查询详情(memberService.getMember)
操作日志:auth / 小程序授权登录
源码内联注释(旧站解析结果)
- 将请求、响应的编码均设置为UTF-8(防止中文乱码)
- 用户同意授权后,能获取到code
- 用户同意授权
- 网页授权接口访问凭证
- 用户标识
- 解密获取用户手机号码
- 被加密的数据
- 加密秘钥
旧站环境备注:pro:(仓库 .env.pro 指向 uat;生产域名未确认,此处沿用 uat 主机示意)
可能抛出的业务码:10006 小程序授权错误、99999 服务内部错误 错误码字典 →