MST

星途 面试题库

面试题:Java中使用HTTP Client发送GET请求时如何设置请求头

在Java使用HTTP Client实现HTTP请求,当发送GET请求时,阐述如何设置自定义的请求头,并给出相关代码示例。
23.5万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试

在Java中使用HTTP Client发送GET请求并设置自定义请求头,可以按照以下步骤进行:

  1. 创建HttpClient实例。
  2. 创建HttpRequest实例,并通过newBuilder方法设置请求方法、URL以及添加自定义请求头。
  3. 执行请求并处理响应。

以下是代码示例:

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()) 执行请求,并将响应体处理为字符串。