RestTemplate使用GET请求,返回中文乱码
Kiml Lv5
  • 更新

1
24.05.23 初始记录

问题

测试 RestTemplate 的 Get 请求,返回中文乱码。

原因

当 RestTemplate 默认使用 String 存储 body 内容时默认使用 ISO_8859_1 字符集。

解决

配置 StringHttpMessageConverter 消息转换器,使用 utf-8 字符集。

1
2
3
4
5
6
7
8
9
@Bean  
public RestTemplate restTemplate() {
RestTemplate restTemplate = new RestTemplate(new OkHttp3ClientHttpRequestFactory());
//消息转换器列表
List<HttpMessageConverter<?>> messageConverters = restTemplate.getMessageConverters();
//配置消息转换器StringHttpMessageConverter,并设置utf‐8
messageConverters.set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
return restTemplate;
}
 评论
评论插件加载失败
正在加载评论插件
由 Hexo 驱动 & 主题 Keep
访客数 访问量