restTemplate 发送get请求带header
时间: 2024-10-27 18:02:02 浏览: 25
`RestTemplate`是Spring框架提供的一种用于访问RESTful服务的客户端工具类,它允许我们方便地发送HTTP请求,包括GET请求,并且支持设置请求头。如果你想通过`RestTemplate`发送一个GET请求并携带特定的headers,可以按照以下步骤操作:
```java
import org.springframework.web.client.RestTemplate;
import org.springframework.http.HttpHeaders;
import org.springframework.http.ResponseEntity;
// 创建RestTemplate实例
RestTemplate restTemplate = new RestTemplate();
// 定义要发送的URL
String apiUrl = "http://example.com/api/resource";
// 定义Header集合
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON); // 设置Content-Type
headers.set("Authorization", "Bearer your_token"); // 添加自定义头
// 使用headers包装请求
HttpEntity<Void> entity = new HttpEntity<>(null, headers);
// 发送GET请求
ResponseEntity<String> response = restTemplate.exchange(apiUrl, HttpMethod.GET, entity, String.class);
// 获取响应数据
String responseData = response.getBody();
```
在这个例子中,我们首先创建了`RestTemplate`,然后定义了目标URL以及需要添加的headers,之后构造了一个`HttpEntity`,并将headers附在其上。最后,我们调用`exchange()`方法发送GET请求,传入URL、请求方法和期望的响应类型。
阅读全文