在Spring中,你可以使用RestTemplate
或WebClient
来发送HTTP请求。下面分别给出使用这两个类的简单示例。
现在pom.xml中导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.6.0</version> <!-- Specify the version of Spring Boot -->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
<version>2.6.0</version> <!-- Specify the version of Spring Boot -->
</dependency>
1. 使用 RestTemplate:
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
public class HttpRequestExample {
public static void main(String[] args) {
// 创建 RestTemplate 实例
RestTemplate restTemplate = new RestTemplate();
// 设置请求 URL
String url = "https://api.example.com/data";
// 发送 GET 请求,并获取响应
ResponseEntity<String> responseEntity = restTemplate.getForEntity(url, String.class);
// 获取响应体
String responseBody = responseEntity.getBody();
// 处理响应
System.out.println("Response: " + responseBody);
}
}
2、使用 WebClient:
import org.springframework.web.reactive.function.client.WebClient;
public class HttpRequestExample {
public static void main(String[] args) {
// 创建 WebClient 实例
WebClient webClient = WebClient.create();
// 设置请求 URL
String url = "https://api.example.com/data";
// 发送 GET 请求,并获取响应
String responseBody = webClient.get()
.uri(url)
.retrieve()
.bodyToMono(String.class)
.block();
// 处理响应
System.out.println("Response: " + responseBody);
}
}