我正在使用RESTEasy(JAX-RS的实现)。
我找不到为ClientRequest设置基本的,可抢占的身份验证的方法。

ClientRequest request = new ClientRequest("<url>");
// -- here I want to add basic-preemptive authentication --
ClientResponse response = request.get();
System.out.println(response.getEntity(String.class));


正确的方法是什么?
还有其他方法吗?

谢谢。

最佳答案

如果查看ClientRequest中的构造函数,您会发现其中一个采用字符串和ClientExecutor

因此,您可以执行以下操作:

ApacheHttpClient4Executor executor = new ApacheHttpClient4Executor();
DefaultHttpClient client  = (DefaultHttpClient) executor.getHttpClient();
client.addRequestInterceptor(new MyPreemptiveAuthInterceptor(), 0);

ClientRequest request = new ClientRequest("http://my-url", executor);

10-08 01:37