POST
/cib/sendLoginVerifyCode管理后台短信-发送验证码
开放与对接 / 工商银行 CIB
基本信息
- 接口状态开放/回调用(服务端) 免鉴权
- 接口URLPOST
https://dscp-dev.hn12301.net/manage-api/cib/sendLoginVerifyCode - 请求方式
POST - Content-Type
application/json - 暴露渠道管理后台 前缀
/manage-api - 名称来源源码注释
- 调用方本次扫描未发现调用
- 需求上下文
- 维护人 / 最后改动liuhao 2025-03-18
- 读写数据表
openapi_channel_business、system_user反查该表全部接口 → - 控制器
com.jxxx.dscp.api.controller.openapi.CibController#sendVerifyCode - 源码位置
jxxx-dscp/dscp-service-business/src/main/java/com/jxxx/dscp/api/controller/openapi/CibController.java:169 - 判定依据
请求参数
Header 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无(渠道统一鉴权头见《认证方式》) | ||||
Query 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
路径参数及说明
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
Body 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| smsType | … | 否 | SmsType | 发送验证码类型 → sms_log.sms_type 1=兴业银行激活平台登录 2=兴业银行激活平台激活 3=兴业银行H5登录 99=未知 |
| mobile | … | 否 | String | 手机号 → system_user.mobile |
认证方式
响应参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| code | … | 否 | Integer | → sms_log.code |
| msg | … | 否 | String | |
| data | … | 否 | Object |
响应示例
成功响应示例
{
"errcode": 0,
"errmsg": "",
"data": {
"code": "1",
"msg": "\"string\"",
"data": "…"
}
}失败响应示例
{
"data": null,
"可能返回": [
{
"errcode": "99999",
"errmsg": "服务内部错误"
}
]
}附录 · 实现细节
调用链 / 数据表 / 调用点证据 / 源码注释 / 逻辑摘要
涉及数据表:openapi_channel_business、system_user 反查全部引用接口 →
- CibController#sendVerifyCode
- OpenapiChannelBusinessService#queryList(OpenapiChannelBusinessServiceImpl)
- OpenapiChannelBusinessMapper#queryList
- CacheService#putIfAbsent
- SendSmsService#sendVerifyCode(SendSmsServiceImpl)
- SmsService#sendSms
其它依赖:CacheService.putIfAbsent、RedisCacheService.put、AuthService.setAuthValue、SendSmsService.sendVerifyCode、SmsService.sendSms
逻辑摘要:查询详情(userService.get);列表查询(openapiChannelBusinessService.queryList);调用 putIfAbsent(cacheService.putIfAbsent)
源码内联注释(旧站解析结果)
- 确保短信类型已设置,默认为CIB_OTHER
- 1. 查询用户是否有卡
- 如果没有找到卡号,则返回错误
- 2. 过滤出已激活成功的卡片(状态为1-已绑定)
- List<OpenapiChannelBusiness> activatedCards = businessList.stream()
- .filter(card -> card.getActiveStatus() != null && card.getActiveStatus() == 1)
- .collect(Collectors.toList());
- //if (activatedCards.isEmpty()) {
旧站环境备注:pro:(仓库 .env.pro 指向 uat;生产域名未确认,此处沿用 uat 主机示意)
可能抛出的业务码:99999 服务内部错误 错误码字典 →