京灵平台-JAVA对接流程(含bug修复)
本文主要是对平台流程踩坑梳理,以及一些过程中难以理解的点,对现有教程中细节地方进行解释,可能有不够详细的地方,敬请谅解
环境工具说明:SpringBoot+IDEA
目录
1.SDK/Maven环境配置(卡点1)
这个地方有个坑(可能只有我有,若官方可以无需替换),就是官方提供的依赖存在不兼容的情况,技术补发了一个新的wyaks-security-1.1.5-bc170.jar,需要将原有的wyaks-security-1.1.0.jar替换掉
所以这里我放上官方提供给修复后的完全SDK
1.1 SDK下载
1.2 依赖放入本地仓库(卡点2)
因为官方不是线上maven,而是对应sdk的jar包,使用本地依赖缓存时候,可能会与你其他依赖冲突情况,所以需要使用mvn将jar包引入本地Maven仓库,而后再pom配置依赖,
具体pom页面内容
<!-- 本地lib依赖 -->
<dependency>
<groupId>com.jdd</groupId>
<artifactId>jdd-api-domain</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.jdd</groupId>
<artifactId>jdd-open-sdk</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk15on</artifactId>
<version>1.60</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>1.60</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.6</version>
</dependency>
<dependency>
<groupId>com.wyaks</groupId>
<artifactId>wyaks-security</artifactId>
<version>1.1.5</version>
</dependency>
不会的兄弟可以直接问AI如何配置:告诉你下载好后的jar包路径,然后告诉他你要放入本地maven仓库,具体代码他会告诉你的,这里就不赘述了
需要安装好maven,才能使用mvn,注入本地maven仓库
1.3 依赖核查
也就是说运行打包后,一定要检查target/ROOT/WEB-INF/lib内是否含有对应的依赖,若不存在,请检查上面步骤
1.4 配置文件引入
京灵平台资料
https://pan.quark.cn/s/cd6fc8b02975?pwd=UXg1

再我给的网盘中找到jdd_sdk_config.properties,官方的sdk也有提供,可以找一下
放到resources/jdd_sdk_config.properties,如下图

至此,配置工作已基本完成,先带大家快速过一遍,测试环境,成功后再去配置生成环境,防止中途异常因素过多,导致无法定位问题
2 接口调用测试(卡点3)
官方SDK说明文档涵盖很多api,sapi,hapi,smapi等等,其他情况我们不需要考虑,这里我只做分佣,所以不解释其中的含义了,只需要考虑smapi即可
2.1 API说明文档下载
去官网或者下面网盘中下载对应文档,已查看合同为例
2.2 接口请求(卡点4)
变量是需要全部携带过去的,还有一篇同类型文章,只携带requestData内容,可能是调用了其他路由下的接口,可以这样,但是smapi,我们必须携带全部参数,也就是需要手写请求体内全部参数
代码如下:
大家可以直接复制使用,因为这个是测试环境,应该是共用的,具体如何调用接口,大家看下面应该能非常清楚的,其他接口同理即可
@Test
public void test02() throws Exception {
JddClient jddClient = EsuSdkConfig.getJddClient();
DemoRequest request = new DemoRequest();
request.setSysId("a45c51dd7a384849bdeb1442f892bd1f");
request.setRequestNo("112");
request.setReqTime(request.getRequestTime());
request.setToken("3050abf9b0b9458eb6a478bea6a3ac74");
Map<String, String> map = new HashMap<>();
map.put("certNo", "110101198901010001");
request.setRequestData(map);
System.out.println(request);
HttpBizDemoResponse adaptResponse = jddClient.execute(request);
System.out.println(JacksonUtils.toJson(adaptResponse));
}
@Data
static class DemoRequest implements JddRequest<HttpBizDemoResponse> {
private String sysId;
private String requestNo;
private String reqTime;
private String token;
private Map<String,String> requestData;
@Override
public String getApiMethod() {
return "/smapi/v1/ffp-common/queryFreelancerInfoByCert";
}
@Override
public String getJsonParams() {
return JacksonUtils.toJson(this);
}
@Override
public Class getResponseClass() {
return HttpBizDemoResponse.class;
}
@Override
public String getRequestTime() {
return DateUtils.formatDate(new Date(), "yyyyMMddHHmmssSSS");
}
}
你也可以进入后台,获取你们自己的ID参数不知道是不是一样的
2.3 成功返回
返回结果展示
{"code":"00000","msg":"成功","respondTime":"1780458964419","headers":{"gw-encrypt-type":"3DES_RSA","jrgw-resp-code":"00000","jrgw-respond-time":"1780458964419","gw-sign":"pp5utdVgenO6TeOcGLp3jH002aP+WeGzz7RG9Y8SRiJFqfxH06/Ews8NZ9SRBOcFN50r0TkT1ohZokfSXEkB51UC4KnZmGKsOIBQ7vi7/sJR66/4ilS8466OyQPfdwjNqwzjdRVwHHn0uujpAPtLGX4KIBCW4/77hDuT8+dXemo0wgAqh6ugCxZi6a1PCXBtjo3zzxTci7mH0ARjjYNHT79CcqeHYB2i8sy/vjQarA6tHL+5meGVjs6YWeLbUcgO0k0sJwpHjSSn4xm2IesZI5rkonMPFaAAVJrxwTwTff89OepgrOXe8EU2h1WM2Fb/FmtJc8jR0XD6w0mBv1sMZQ==","jrgw-resp-env-key":"Eb780x4ed9HHObKkbva4ja1aS3vlAb9o09aSfXE0FtF0U4iqOftEwWg8D9ocvmtJ0lVFTnFXZeT7s8UGOlbMCry6T6K3DGfYRwEomMxf28qWoSpnkzsB9PfZdRTrY58jC1Wf15+uj4Os94K+ik2623qvtLCb+qJcphH0+PQlLAI=","jrgw-resp-msg":"%E6%88%90%E5%8A%9F","gw-sign-type":"SHA256withRSA"},"bizContent":"{\"msg\":\"成功\",\"responseNo\":\"112\",\"responseData\":{\"senseSignStatus\":0,\"status\":1,\"desc\":\"未查询到该灵工信息,请确认灵工身份证号是否有误\",\"faceAuthStatus\":0},\"code\":\"00000\",\"responseTime\":\"20260603115604\"}"}
至此,整套流程结束,后续就是配置生产环境,相信大家可以自行完成了,若有很多不清楚的,可以留言,我就再为大家完善一下,合同签订->对接分佣的整套生产环境的流程
更多推荐


所有评论(0)