Spring RestTemplate 远程调用别人接口后出现中文乱码问题

1.原因

由于RestTemplate的默认构造方法初始化的StringHttpMessageConverter的默认字符集是ISO-8859-1,所以导致RestTemplate请求的响应内容会出现中文乱码。

2.解决

springboot中@Bean配置的时候要把StringHttpMessageConverter编码改成UTF8格式。如下:

@Bean    
public RestTemplate restTemplate() {

    RestTemplate restTemplate = new RestTemplate();

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

    return restTemplate;

}

猜你喜欢

转载自blog.csdn.net/weixin_45450428/article/details/105126026