HTTP 요청 API에서 다른 유형의 JSON 응답을 받고 있습니다. 몇 가지 JSON 형식 옵션이 API에서 다시 제공 될 수 있습니다. 예를 들어 예상되는 데이터에 대해 유효한 응답 일 수 있지만 경우에 따라 내부 서버 오류 세부 메시지 일 수 있습니다.Java 처리 JSON
현재 Gson을 사용하여 들어오는 문자열을 개체로 변환하지만 때로는 Gson이 다른 템플릿 클래스로 변환 할 수없는 다른 형식으로 제공되기 때문에 제공됩니다.
참고 : 오류가 예외는 아닙니다. 예를 들어, JSON 본문에는 인증이 실패했으나 호출이 성공적으로 완료되었으며 JSON 본문이 올바른 정보 만 포함됩니다. HTTP는 실제로 항상 성공적이며 200 일 것입니다. 문제는 때때로 인증이 실패하고 다른 JSON을 반환한다는 것입니다.
String response = restTemplate.getForObject(request, String.class);
ObjectResponse objResponse = gson.fromJson(response, ObjectResponse.class);
다양한 유형의 응답을 처리 할 수 있도록 더 나은 방법을 제안 해주세요. 아니면 완전히 다른 방법으로 알고있을 수도 있습니다.
감사합니다.
HTTP 헤더에는 상태 코드가 있습니다. 그걸 사용하고 싶을 수도 있습니다 (200 = OK, 404 = 찾을 수 없음, 500 = 내부 서버 오류 등) – enlait
글쎄, 당신은 항상 자바가 아닌 세상의 대부분을지도와 목록으로 해석 한 다음 결과 트리를 검사하십시오. 객체를 생성해야한다면 Map을 받아들이는 생성자를 작성하십시오. 흐름은 실제로 매우 자연 스럽습니다. –