Отправить запрос GET с аутентификацией подсказки пароля 443 пользователя с использованием Java HttpClient

Я хочу получить ответ от URL-адреса, отправив параметры URL-адреса (параметры GET), например. https://ebctest.cybersource.com/ebctest/DownloadReport/2014/07/23/$MerchantId/ConversionDetailReport.xml

Когда я попадаю на сервер, мне предлагается диалоговое окно с идентификатором пользователя и паролем.

Я могу получить ответ, вручную введя идентификатор, пароль. Как я могу добиться этого программно, используя java.

Ниже приведен код, который я пробовал до сих пор.

final HttpClient httpClient = new HttpClient();
httpClient.getState().setCredentials(new AuthScope(null, 443), new UsernamePasswordCredentials(userName, password));
httpClient.getParams().setParameter("http.socket.timeout", Integer.valueOf(10000));
httpClient.getState().setAuthenticationPreemptive(true);            

final GetMethod method = new GetMethod("https://ebctest.cybersource.com/ebctest/DownloadReport/2014/07/23/$merchantId/ConversionDetailReport.xml");

final InputSource is = new InputSource(new ByteArrayInputStream(method.getResponseBody()));

Когда я делаю method.getResponseBody, я получаю пустое. Я должен получить правильный ответ, как я получаю при отправке запроса вручную.


person antnewbee    schedule 25.07.2014    source источник
comment
Отсутствует важная информация: Что происходит с кодом, который вы пробовали? Что вы ожидали вместо этого?   -  person BackSlash    schedule 25.07.2014
comment
добавил еще некоторые детали. Спасибо   -  person antnewbee    schedule 25.07.2014


Ответы (1)


Это похоже на базовую аутентификацию, вы должны иметь возможность отправить имя пользователя и пароль, вызвав этот URL-адрес:

https://имя пользователя:пароль@ebctest.cybersource.com/ebctest/D

person DavidC    schedule 25.07.2014
comment
или используйте заголовок аутентификации, например: avajava.com/tutorials/lessons/ - person DavidC; 25.07.2014