在Java中,发送HTTP请求并获取响应内容,常用的库有`HttpClient`(Java 11及以后版本引入)或`Apache HttpClient`。这里我将提供使用Java 11及以上版本的`HttpClient`的示例代码。
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class HttpGetRequestExample {
public static void main(String[] args) {
// 创建HttpClient实例
HttpClient client = HttpClient.newHttpClient();
// 构造HttpRequest,这里以GET请求为例,访问的URL是https://httpbin.org/get
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://httpbin.org/get"))
.build();
// 发送请求并获取响应
try {
HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
// 输出响应状态码和响应体
System.out.println("Response status code: " + response.statusCode());
System.out.println("Response body: " + response.body());
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
这个示例展示了如何使用Java 11的`HttpClient`来发送一个简单的GET请求到`https://httpbin.org/get`,并打印出响应的状态码和响应体内容。
请注意,为了使这段代码正常工作,你需要使用Java 11或更高版本。此外,由于网络请求可能抛出`IOException`或`InterruptedException`异常,因此代码块被包裹在`try-catch`语句中,以处理这些潜在的异常。