基本认证
Preemptive 身份验证可以禁用,这意味着每个发送出去的请求没有授权头,当收到HTTP 401
响应时,将重新发送与基本身份验证头完全相同的请求。 可以通过HttpAsyncClientBuilder
来禁用:
credentialsProvider.setCredentials(AuthScope.ANY,
new UsernamePasswordCredentials("user", "password"));
RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200))
.setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() {
httpClientBuilder.disableAuthCaching(); //禁用 preemptive 身份验证
return httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
}