如何在下面使用带有 Apache httpclient 的 jersey-client?
How can I use jersey-client with Apache httpclient underneath?
我正在为一个项目使用 jersey-client
,并且想让 Client
使用来自 Apache httpclient 库的 HTTP 客户端。
我之前看到这是可能的。
我正在使用 Jersey 2.20。
使用 ApacheConnectorProvider. Pass an instance to ClientConfig.connectorProvider() 获取 ClientConfig
的实例,该实例将在后台使用 Apache HTTP 客户端。
使用以下依赖项:
<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());
}
}
我正在为一个项目使用 jersey-client
,并且想让 Client
使用来自 Apache httpclient 库的 HTTP 客户端。
我之前看到这是可能的。
我正在使用 Jersey 2.20。
使用 ApacheConnectorProvider. Pass an instance to ClientConfig.connectorProvider() 获取 ClientConfig
的实例,该实例将在后台使用 Apache HTTP 客户端。
使用以下依赖项:
<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());
}
}