我得到了简单的 JAX-RS 资源,并且我使用 Apache CXF WebClient 作为客户端。我正在使用 HTTP 基本身份验证。当它在服务器上失败时,典型的 401 UNAUTHORIZED 响应与 WWW-Authenticate 标头一起发送。
收到此 (WWW-Authenticate) 标头时,WebClient 会发生奇怪的行为。WebClient(内部)多次(20 次)重复相同的请求并且失败。
WebClient webClient = WebClientFactory.newClient("http://myserver/auth");
try {
webClient.get(SimpleResponse.class);
// inside GET, 20 HTTP GET requests are invoked
} catch (ServerWebApplicationException ex) {
// data are present when WWW-authenticate header is not sent from server
// if header is present, unmarshalling fails
AuthError err = ex.toErrorObject(webClient, AuthError.class);
}