 |
|
hulalalla
V2EX member #200597, joined on 2016-11-09 20:21:03 +08:00Today's activity rank 18492
|
 |
Per hulalalla's settings, the topics list is hidden |
Deals info, including closed deals, is not hidden
hulalalla's recent replies
恭喜侠士福至心灵,不经意间触发奇遇 [周日上班] ,正可谓:“日历撕成补丁样,拼来长假债难偿。七天换得三天假, 调走双休凑数忙。
这个问题的原因是,Spring Web 的 RestTemplate 在处理 HTTP 请求时,会先调用 HttpMessageConverter 来将 HTTP 响应转换为对象,然后再调用全局异常处理器来处理异常。而 Apache 的 HttpClient 在处理 HTTP 请求时,只会调用全局异常处理器来处理异常。
所以,在正常情况下,两者都会得到相同的结果。但在异常情况下,RestTemplate 会得到经过消息处理器转换后的结果,而 HttpClient 会得到原始的异常信息。
要解决这个问题,可以为 RestTemplate 设置一个自定义的 HttpMessageConverter ,来将 HTTP 响应转换为你想要的格式。