Я хочу получить данные от нашего Jira API Rest. Есть SSO, я автоматически авторизируюсь с моим пользователем Windows.
Когда я звоню на домашнюю страницу (https://jira.f.bbg/rest/api/2/search?jql):
- С моим кодом Java: {"startAt": 0, "maxResults": 50, "всего": 0, "проблем": []}
- С моим браузером в приватной навигации: {"startAt": 0, "maxResults": 50, "всего": 0, "проблемы": []}
- С моим браузером: я получил данные, которые я хочу от API
Когда я вызываю API rest с параметром (https://jira.f.bbg/rest/api/2/search?jql=project=PARE2):
- С моим кодом Java: java.io.IOException: сервер вернул код ответа HTTP: 400
- С браузером в приватной навигации: {"errorMessages": ["La valeur 'PARE2' n'existe pas pour le champ 'project'."], "Errors": {}}
- С моим браузером: я получил данные, которые я хочу от API
Я много чего перепробовал, сначала у меня проблемы с SSL, я использую jks, и теперь все в порядке. Я не очень понимаю, почему я не могу получить данные, и почему у меня ошибка 400, когда у меня был параметр для URL :(
public String recuperer(String adresse) throws Exception {
URL url = new URL(adresse);
HttpsURLConnection.setDefaultSSLSocketFactory(SecuriteHelper.getSslContext().getSocketFactory());
HttpsURLConnection con = (HttpsURLConnection) url.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("Accept-Charset", "UTF-8");
con.setRequestProperty("Accept", "application/json");
StringBuilder sb = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream()));
for (String line; (line = reader.readLine()) != null;) {
sb.append(line);
}
return sb.toString();
}