RestTemplate HttpClientErrorException NotFound: 404
现象:
使用RestTemplate的时候,遇到了HttpClientErrorException$NotFound: 404 异常,想必很多小伙伴一看这个错误以为是找不到这个接口,而这个接口又明明存在。那么你很可能出现和我一样的问题。
原因:
我接收RestTemplate请求的一端,对应的方法上面没有写@ResponseBody,或者所在类上没有加@RestController,导致我返回的数据不是Json格式的字符串,所以最后导致了这个错误。
解决:
在接口所在方法上加上@ResponseBody,或在所在类上加上@RestController。
原理:
具体为什么因为没加这个会报404异常,理论上是接收端应该能收到这个请求,只不过返回的数据在RestTemplate端无法识别成Json格式的字符串,但实际测试的结果是,接收端连这个请求都接收不到,必须要要加上@ResponseBody或@RestController。
网友评论