resttemplate防止发送的中文,别人收到以后是乱码
时间: 2024-02-05 18:14:02 浏览: 16
当使用RestTemplate发送中文字符时,可以使用UTF-8编码将这些字符进行编码,以确保它们能够正确地传输和显示。你可以在请求头中添加"Content-Type: application/json;charset=UTF-8"来指定字符集编码方式。
例如:
```java
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Accept-Charset", "UTF-8");
String requestBody = "{\"name\": \"张三\", \"age\": 20}";
HttpEntity<String> requestEntity = new HttpEntity<>(requestBody, headers);
ResponseEntity<String> responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
String responseBody = responseEntity.getBody();
```
在这个例子中,我们设置了请求头的Content-Type为application/json,并指定了字符集编码方式为UTF-8。请求体是一个JSON字符串,其中包含了名字为"张三"的人的信息。最终,我们使用RestTemplate发送请求,并从响应中获取了返回的数据。