今天遇到一个很奇葩的问题。
场景
从逻辑服务处理一些逻辑,会向微信服务发送请求,两边都是用的springboot+springmvc,请求方法是post,请求参数是一个对象,封装为json注入requestbody。
在一次逻辑服务升级中(升级不涉及这个功能),该请求报400错误了,也就是无法解析参数。
差异化分析
- 本次更新前是正常的
- 程序是同一个jar包,本次更新没有改变配置,本次更新没有改变这一块代码
- 测试服正常,生产环境错误
- 将失败的请求日志打印出来,用第三方工具模拟请求,正常
解决方法
以前传的参数是一个较大的对象,把它简化一下,只传微信服需要的数据,问题就解决了。
但是产生问题的原因还是不知道。
总结
为了避免这个问题,以后的请求数据只传需要的数据,尽量简化模型。