Я пытаюсь использовать Java 11 HTTP Client против аутентифицированной службы, используя обычную аутентификацию. Аутентификация проходит успешно, но она делает дополнительный обход к серверу, чтобы понять, что он должен отправить данные аутентификации.
Обыскали документацию и код и в какой-то момент внутренне использовали какой-то кеш, ноЯ не могу установить значение кэша.
Вот мой код клиента:
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("http://someurl.com"))
.build();
HttpClient client = HttpClient.newBuilder()
.authenticator(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("user", "pass".toCharArray());
}
})
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
Я ожидал, что каким-то образом я смогу сказать клиенту, что он превентивно отправляет данные аутентификации, а не толькокогда сервер запрашивает.