RestTemplate的exchange方法怎么用
时间: 2024-01-09 21:04:28 浏览: 137
RestTemplate是Spring提供的一个用于发送HTTP请求的工具类,exchange方法可以发送任意类型的HTTP请求,并返回一个ResponseEntity对象,该对象包含响应的状态码、响应头和响应体等信息。下面是exchange方法的用法示例:
```java
RestTemplate restTemplate = new RestTemplate();
// 构建请求参数
MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
params.add("param1", "value1");
params.add("param2", "value2");
// 构建请求头
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
// 构建请求实体
HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(params, headers);
// 发送POST请求,并返回响应实体
ResponseEntity<String> responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
// 获取响应状态码
HttpStatus statusCode = responseEntity.getStatusCode();
// 获取响应头信息
HttpHeaders responseHeaders = responseEntity.getHeaders();
// 获取响应体信息
String responseBody = responseEntity.getBody();
```
在上述示例中,我们使用RestTemplate发送了一个POST请求,请求参数为param1=value1¶m2=value2,请求头为application/x-www-form-urlencoded格式。exchange方法的第一个参数是请求的URL地址,第二个参数是HTTP请求方法(GET、POST等),第三个参数是请求实体,第四个参数是响应体的类型。最后通过ResponseEntity对象获取响应的状态码、响应头和响应体等信息。
阅读全文