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();
引用: