MST

星途 面试题库

面试题:Java中Apache HttpClient基本使用

请使用Apache HttpClient发送一个简单的GET请求,并处理响应结果,写出关键代码片段。同时说明如何设置请求头信息。
19.4万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试

以下是使用Apache HttpClient发送GET请求并处理响应结果的关键代码片段,以及设置请求头信息的方法:

  1. 添加依赖(如果使用Maven)
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.13</version>
</dependency>
  1. 发送GET请求并处理响应
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class HttpClientExample {
    public static void main(String[] args) {
        try (CloseableHttpClient httpClient = HttpClients.createDefault()) {
            // 创建GET请求
            HttpGet httpGet = new HttpGet("https://example.com");

            // 设置请求头信息
            httpGet.setHeader("User-Agent", "Mozilla/5.0");

            // 执行请求
            HttpResponse response = httpClient.execute(httpGet);

            // 处理响应
            if (response.getStatusLine().getStatusCode() == 200) {
                String responseBody = EntityUtils.toString(response.getEntity());
                System.out.println("响应内容: " + responseBody);
            } else {
                System.out.println("请求失败,状态码: " + response.getStatusLine().getStatusCode());
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  1. 设置请求头信息
    • 使用HttpGet对象的setHeader方法来设置请求头,如上述代码中的httpGet.setHeader("User-Agent", "Mozilla/5.0");
    • 第一个参数是请求头的名称,第二个参数是请求头的值。可以根据需要设置多个请求头。