Я пытаюсь выполнить переходы JIRA с помощью java-кодирования, большую часть времени это работает, но вызов jira rest api иногда возвращает следующую ошибку: (На самом деле с этой ошибкой переход обрабатывается)
java.io.IOException: Server returned HTTP response code: 400 for URL: http://testingSite/jira/rest/api/latest/issue/ABC-123/transitions
Кроме того, в некоторых случаях вызов остальных API не возвращает ошибок, но переход не продолжается.
Вот мое кодирование, в большинстве случаев оно работает, поэтому мои дни испортились, чтобы понять, что происходит.
try {
String authkey = "YWRtaW46cGFzc3dvcmQ=";
URL url = new URL("http://testingSite/jira/rest/api/latest/issue/ABC-123/transitions");
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
connection.setRequestProperty("Authorization", "Basic " + authkey);
connection.setRequestProperty("Accept-Charset", "UTF-8");
connection.setRequestProperty("Content-Type", "application/json;charset=UTF-8");
OutputStream os = connection.getOutputStream();
String data = "{\"transition\": {\"id\": \"71\"}}";
os.write(data.toString().getBytes("UTF-8"));
os.close();
content = connection.getInputStream();
in = new InputStreamReader(content);
br = new BufferedReader(in);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (Exception e) {
e.printStackTrace();
}
Ошибка исходит из этой строки:
content = connection.getInputStream();
Я ожидаю, что нет исключения, и все переходы обрабатываются, но поведение довольно странно для меня.
Поведение 1: сервер вернул код ответа HTTP: 400, но переход обрабатывается
Поведение 2. Сервер не возвращает никаких ошибок, но переход не обрабатывается