微信或者支付宝支付后,会有回调地址redirectUrl.最近碰到个问题,回调的地址 参数 只有第一个。这就郁闷了,看了好几个服务,从前端到后台,而且这个功能以前也都是好好的。
然后花费了大半天的时间,最终找到了问题。公司最新升级了httpclient,版本号是4.5.1的。但是用新版本的httpClient 没有做转码,导致在做put请求时候,除了第一个参数外,其他的参数没有收到。解决方法是 使用了URLEncoder.encoder("","utf-8");
因为我们里面的调用服务链太长了,导致在追的时候不好追。刚好其中一个服务升级了httpclient,sprignMVC自带一层解码,在调用其他服务时候需要再次转码,其他服务在springMVC下解码。但是新版本的put请求有点问题。 所以导致参数只有第一个。