面试题答案
一键面试在Java中使用HTTP Client发送GET请求并设置自定义请求头,可以按照以下步骤进行:
- 创建
HttpClient
实例。 - 创建
HttpRequest
实例,并通过newBuilder
方法设置请求方法、URL以及添加自定义请求头。 - 执行请求并处理响应。
以下是代码示例:
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class HttpGetWithHeadersExample {
public static void main(String[] args) throws IOException, InterruptedException {
// 创建HttpClient实例
HttpClient client = HttpClient.newHttpClient();
// 创建HttpRequest实例并设置自定义请求头
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://example.com"))
.header("Custom-Header", "Value")
.GET()
.build();
// 执行请求并处理响应
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
// 输出响应状态码和响应体
System.out.println("Status Code: " + response.statusCode());
System.out.println("Response Body: " + response.body());
}
}
在上述代码中:
HttpClient.newHttpClient()
创建了一个默认的HttpClient
实例。HttpRequest.newBuilder()
创建一个请求构建器。.uri(URI.create("https://example.com"))
设置请求的URL。.header("Custom-Header", "Value")
添加一个自定义的请求头,键为Custom-Header
,值为Value
。.GET()
设置请求方法为GET。client.send(request, HttpResponse.BodyHandlers.ofString())
执行请求,并将响应体处理为字符串。