Я пытаюсь использовать API веб-сервиса Sonarqube. Мне нужно передать некоторые параметры вместе с именем пользователя и паролем в этот API веб-сервиса.
Для этой цели я написал следующий код:
HttpClient client = new HttpClient();
String uri = "http://myUrl.sonar.com";
client.getState().setCredentials(new AuthScope(uri, 8080, AuthScope.ANY_REALM),
new UsernamePasswordCredentials("username", "password"));
GetMethod get = new GetMethod("http://myUrl.sonar.com/api/resources?"
+ "resource=110041&format=json&metrics=ncloc,coverage&verbose=true"
+ "&metrics=sqale_index,sqale_debt_ratio,ncloc,sqale_rating");
get.setDoAuthentication(true);
try {
int status = client.executeMethod(get);
System.out.println(status + "\n" + get.getResponseBodyAsString());
} catch (IOException e) {
e.printStackTrace();
} finally {
get.releaseConnection();
}
Когда я запускаю этот код из Eclipse, он возвращает
401
{"err_code":401,"err_msg":"Unauthorized"}
Любая вероятная причина для этого? имя пользователя и пароль правильные.