springboot中使用resttemplate调用服务是设置header中的accept-charset

论坛 期权论坛 脚本     
已经匿名di用户   2022-3-21 23:40   1530   0

s使用restemplate调用其它服务时,请求中header中的accept-charset会默认带很多编码,影响效率

如图:

springboot中配置restTemplate

@Bean

RestTemplate restTemplate(){

  RestTemplate template = new RestTemplate ();

SimpleClientHttpRequestFactory factory = (SimpleClientHttpRequestFactory ) template.getRequestFactory();

factory.setConnectTimeout(3000);//连接超时时间

factory.setReadTimeout(10000);//响应超时时间

}

使用

StringHttpMessageConverter t = new StringHttpMessageConverter();

t.setWriteAcceptCharset(false);//设置为false就可以修改header中的accept-charset属性

resTemplate.getMessageConverTers().add(0,t);

HttpHeaders headers = new HttpHeaders();

headers.setContentType(MediaType.APPLICATION_JSON);

headers.set(HttpHeaders.ACCEPT_CHARSET,StandardCharsets.UTF_8.toString());

HttpEntity<String> requestEntity = new HttpEntity<>(request, headers);

restTemplate.postForEntity(url,requestEntity,String.clss).getBody();

引用:

https://www.jianshu.com/p/d8463c5955fd

https://www.jianshu.com/p/deb5e5efb724

转载于:https://www.cnblogs.com/youdream/p/9767729.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP