首页 > 解决方案 > Rest template.exchange 在对 dot net core 中运行 REST 服务的服务器执行 GET 请求时将响应作为垃圾返回

问题描述

}

即使我已经将 stringHttpMessageConverter 设置为 charset utf-8 但没有工作。

我的代码喜欢

//restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName("UTF-32")));
         HttpMessageConverter stringHttpMessageConverter = new StringHttpMessageConverter(Charset.forName("UTF-16"));
            List<HttpMessageConverter<?>> httpMessageConverter = new ArrayList();
            httpMessageConverter.add(stringHttpMessageConverter);
            restTemplate.setMessageConverters(httpMessageConverter);

        responseEntity = restTemplate.exchange(/*new URI(*/targetUrl/*)*/, httpMethod, reqEntity, String.class);

如果您查看响应,它看起来像一个中文字符..

标签: javaresttemplate

解决方案


您可以将其添加到您的标题中

httpHeaders.set("Accept-Charset", StandardCharsets.UTF_8.name());

推荐阅读