RestTemplate发请求收到响应乱码,Postman正常

这几天上线了一个项目,有些业务线在对接。由于大家使用的请求工具类不同,可能就会遇到各种各样的问题。其中有些使用RestTemplate的同事就发现返回的响应信息会乱码,那这个是什么原因呢?怎么处理呢?

原因

出现这种情况的原因是RestTemplate中的messageConverters列表中的StringHttpMessageConverter默认采用的是ISO-8859-1的编码格式,但我们现在一般的响应信息都是UTF-8的,字符编码不一致,这就导致了响应信息乱码的问题。

解决

知道原因就容易解决了。只要把字符集改成UTF-8就好了,代码如下:

restTemplate.getMessageConverters().set(1,new StringHttpMessageConverter(StandardCharsets.UTF_8));

这样再次请求就不会出现乱码的情况了。


喜欢本文的朋友不要忘记点一个免费的赞哦,你的赞将是我最大的动力。

你可能感兴趣的:(Java,postman,测试工具,java)