对接第三方服务时的一个经验教训——一定要事无巨细的打上日志

这几天遇到了一个需要和同公司不同部门的第三方服务对接的需求,那个第三方服务是一个PHP服务,前人没打什么日志,直接让SpringWebFlex框架自动对第三方的返回内容做了反序列化,由此引入了一堆问题。

在第三方变更时,有个地方没通知我们,导致我方序列化处的逻辑报错。而由于没打日志,又无法获取到原始返回内容,因此只好将SpringWebFlex的bodyToMono<SomeDTO>改为了bodyToMono<String>,然后手动使用Jackson将返回的字符串进行序列化。

最终发现无法序列化是因为,PHP服务返回空值时,返回的是个[] 空对象,经典PHP返回内容。

由此,得出了一些心得:
第三方服务的一切对你都是未知的:

  1. 传入第三方的参数是什么样的?
  2. 调用第三方的HTTP方法是什么样的?
  3. 接收到的第三方直接响应体是什么样的?
  4. 接收到的第三方响应头是什么样的?
  5. 如果第三方需要我方协助排查,提供请求报文,如何获取完整请求报文?

我们完全无法事先获知。

因此,对接第三方服务时一定要事无巨细的打上日志!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值