java - 如何在下面使用带有 Apache httpclient 的 jersey-client?

标签 java jersey-2.0 jersey-client

我正在为一个项目使用 jersey-client,我想让 Client 使用来自 Apache httpclient 库的 HTTP 客户端。

我之前看到这是可能的。

我正在使用 Jersey 2.20。

最佳答案

使用ApacheConnectorProvider .将实例传递给 ClientConfig.connectorProvider()获取将在后台使用 Apache HTTP 客户端的 ClientConfig 实例。

使用以下依赖项:

<dependency>
        <groupId>org.glassfish.jersey.connectors</groupId>
        <artifactId>jersey-apache-connector</artifactId>
        <version>2.20</version>
</dependency>

这是一个工作示例:

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;

import org.glassfish.jersey.apache.connector.ApacheConnectorProvider;
import org.glassfish.jersey.client.ClientConfig;


public class Test {
    @org.junit.Test
    public void test() {
        ClientConfig cc = new ClientConfig().connectorProvider(new ApacheConnectorProvider());
        Client client = ClientBuilder.newClient(cc);
        System.out.println(client.target("http://example.com/").request().get().getStatus());
    }
}

关于java - 如何在下面使用带有 Apache httpclient 的 jersey-client?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31995540/

相关文章:

java - 何时使用 type.length-1;和 type.length();在 java

java - 如何获取 Java 中所有窗口句柄的列表(使用 JNA)?

java - 调用 setOnItemClickListener 时出现空指针异常

java - 无法让简单的 RS Web 服务与 Eclipse Mars 一起使用

jakarta-ee - "Already connected"在 docker 容器内运行 jersey 应用程序时出现异常

java - JVM 上的 2d 多媒体库

java - NoSuchFieldError : INCLUDE_ALL 错误

java - 将 Jersey 更新到 2.22.2 时出现 MessageBodyProviderNotFoundException

java - 从 Jersey Client 1.x 升级到 Jersey Client 2.x

java - 如何在 Jersey 客户端中默认使用 Genson 提供程序?