为什么不用resttemplate.exchange
时间: 2023-07-28 08:07:22 浏览: 81
确实,使用RestTemplate.exchange()方法可以更加灵活地发送HTTP请求,包括设置请求头、请求体、查询参数、路径参数等。它可以支持GET、POST、PUT、DELETE等HTTP请求方法,也可以支持不同的响应类型。下面是使用RestTemplate.exchange()方法发送GET请求的示例代码:
```java
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
public class RestTemplateUtils {
public static ResponseEntity<String> sendGetRequest(String url) {
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<String> response = restTemplate.exchange(url, HttpMethod.GET, entity, String.class);
return response;
}
}
```
在上面的代码中,我们通过创建一个HttpHeaders对象来设置请求头,在HttpEntity中将请求头和请求体封装为一个整体。然后,我们使用RestTemplate.exchange()方法来发送GET请求,并设置了请求方法、请求头、请求体和返回类型。RestTemplate.exchange()方法返回一个ResponseEntity对象,其中包含了响应状态码、响应头和响应体等信息。
阅读全文