# 征信解析接口调用日志补充实施记录 ## 背景 为便于联调排查,需要在调用天座征信解析接口时记录实际请求地址、表单参数以及接口返回的原始 JSON。 后续根据真实返回样例确认外层是否成功只看 `success` 字段,`code` 仅记录日志不参与成功判断,且 `payload` 可能以 JSON 字符串形式返回。 ## 修改内容 1. `CreditParseClient` - 调用前打印 `credit-parse.api.url` 和本次表单参数 `serialNum/orgCode/runType/remotePath/model`。 - 调用后打印接口返回的原始 JSON 字符串。 - 原始 JSON 打印后再反序列化为现有 `CreditParseInvokeResponse`,保持后续业务处理逻辑不变。 - 按最新返回结构兼容字符串形式的 `payload`,`code` 仅保留日志输出。 2. `HttpUtil` - 新增 `postUrlEncodedFormForString` 方法。 - 该方法沿用 `application/x-www-form-urlencoded` 提交流程,但返回原始响应字符串,供征信解析调用日志记录使用。 3. 测试 - 调整 `CreditParseControllerTest` 中征信解析客户端测试,验证新方法仍提交 `serialNum/orgCode/runType/remotePath/model` 参数,并可解析返回 JSON。 4. `CcdiCreditInfoServiceImpl` - 平台外层成功判断只检查 `success=true`,不再检查 `code`。 5. `lsfx-mock-server` - 征信解析 Mock 外层 `code` 同步调整为 `10000`,保持本地联调返回结构一致。 ## 影响范围 - 仅影响征信解析接口调用日志与该接口的响应读取方式。 - 不改变请求参数、接口地址配置、返回 DTO、征信信息落库和页面交互。 ## 验证 - `mvn -pl ccdi-lsfx -Dtest=CreditParseControllerTest test`:通过,已覆盖调用日志和 `payload` 字符串解析。 - `mvn -pl ccdi-info-collection -am -Dtest=CcdiCreditInfoServiceImplTest -Dsurefire.failIfNoSpecifiedTests=false test`:通过,已覆盖 `success=true` 时不依赖固定 `code`。 - `mvn -pl ccdi-lsfx,ccdi-info-collection -am compile`:通过。 - `git diff --check`:通过。