为了使用 Apache HttpClient 4.5,你需要添加以下必需的 JAR 包。以下是该版本所需的主要依赖项:


1. HttpClient 4.5 所需 JAR 包

主要 JAR 包:

  • httpclient-4.5.jar — HttpClient 核心库,处理 HTTP 请求和响应。
  • httpcore-4.4.6.jar — HttpClient 的底层依赖,提供 HTTP 协议的支持。
  • commons-logging-1.2.jar — Apache 的日志库,HttpClient 用于日志记录。
  • commons-codec-1.10.jar — 编解码工具,HttpClient 用于 URL 编码/解码。
  • httpmime-4.5.jar — 可选的依赖,用于处理 Multipart 请求(上传文件等)。

可选依赖:

  • jackson-core-2.x.jar — 如果你需要 JSON 支持时(比如与 HttpClient 一起使用)。
  • gson-2.x.jar — 如果你更喜欢 Gson 来处理 JSON 数据。

2. Maven 依赖

在 pom.xml 中加入以下依赖项来自动引入所有必要的 JAR 包:

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5</version>
</dependency>

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.4.6</version>
</dependency>

<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
</dependency>

<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.10</version>
</dependency>

<!-- 可选:用于处理多部分内容(文件上传等) -->
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpmime</artifactId>
    <version>4.5</version>
</dependency>

3. 下载 JAR 文件

你也可以手动下载这些 JAR 包:


4. 使用示例

这是一个简单的 HttpClient 4.5 请求的代码示例:

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.util.EntityUtils;

public class HttpClientExample {

    public static void main(String[] args) throws Exception {
        // 配置 HttpClient
        RequestConfig config = RequestConfig.custom()
                .setConnectTimeout(5000)  // 设置连接超时时间
                .setSocketTimeout(5000)   // 设置读取超时时间
                .build();

        try (CloseableHttpClient client = HttpClients.custom().setDefaultRequestConfig(config).build()) {
            // 发送 GET 请求
            HttpGet request = new HttpGet("http://www.example.com");
            HttpEntity entity = client.execute(request).getEntity();
            
            // 打印响应
            String response = EntityUtils.toString(entity);
            System.out.println(response);
        }
    }
}

5. 其他补充

如果你需要:

  • HttpClient 版本兼容性:确保使用兼容版本的 HttpCore 和其他相关库;
  • 集成到 Spring:HttpClient 4.5 可以直接与 Spring 的 RestTemplate 一起使用,作为底层 HTTP 客户端;
  • 处理认证代理SSL 或 cookie 等功能,请告诉我,我可以为你提供更多细节。

需要更多帮助,随时告诉我!