Невозможно сделать запрос HTTP Get от Java к API REST с именем пользователя и паролем - PullRequest
0 голосов
/ 08 января 2020

У меня есть требование на моем рабочем месте, где мне нужно сделать запрос Get из моего Java кода в API отдыха стороннего приложения для получения некоторых данных xml.

Я могу получить доступ к URL-адресу Rest из моего браузера, где он запрашивает имя пользователя и пароль. После ввода учетных данных в браузере отображается ответ XML.

Но когда я пытаюсь получить доступ к тому же API из Java 7, передавая имя пользователя и пароль, я получаю «401: неавторизовано» ошибка.

Я предоставил код, который отправляет запрос GET в API.

public static void MyGetRequest()
{
 URL urlForGetRequest= new URL("http:myproject.dev.myclient/api/projects"); //sample URL
HttpURLConnection connection= (HttpURLConnection) urlForGetRequest.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("username","password"); //I pass my username and password here
int responseCode= connection.getResponseCode();
String responseMessage= connection.getResponseMessage();
System.out.println("HTTP Response Code:" +responseCode);
System.out.println("HTTP Response Message:" +responseMessage);

if(responseCode==HttpURLConnection.HTTP_OK)
{
 //code to fetch the XML response
}
}

Просим вас помочь мне, сообщив, где я иду не так. Поскольку это моя первая задача по вызовам API, пожалуйста, не обращайте внимания, если это глупый вопрос.

...