1

나는 모든 종류의 오류 (서버 오류, http 오류, 코드 예외, DB에 예상되는 레코드가 없거나 시간 초과 예외 등)에 대한 일반 오류 코드로 HTTP 코드 500을 사용하는 사람들을 보았습니다. 그러나이 코드 500은 응용 프로그램 서버 (제 경우는 JBoss)에서 발생하는 오류의 경우에만 사용되어야하며 응용 프로그램 자체는 아닙니다 (즉, 코드 예외 또는 유효하지 않은 암호 또는 DB가 아닌 경우) -record-not-found 경우. 그렇다면 REST 서비스 메소드에서 언제 HTTP 상태 코드 500을 반환해야합니까? .에 응답 할 때REST 응용 프로그램에서 클라이언트로 HTTP 상태 코드 500 (내부 서버 오류)을 반환해야하는시기는 언제입니까?

는 "5XX (서버 오류) 상태 코드의 클래스는 서버가 오류를 범하거나 요청 방법을 수행하기 불가능하다 것을 인식하고 있음을 나타냅니다 제외하고 다음 HTTP 사양에 설명 된 바와 같이

답변

2

HEAD 요청에서 서버는 오류 상황에 대한 설명과 임시 또는 영구 조건을 포함하는 표현을 전송해야합니다 사용자 에이전트는 포함 된 표현을 사용자에게 표시해야합니다 이러한 응답 코드는 모든 요청 방법에 적용 할 수 있습니다. " - https://greenbytes.de/tech/webdav/rfc7231.html#rfc.section.6.6

프로토콜 관점에서 볼 때 응용 프로그램 서버 또는 실행중인 서버가 응용 프로그램 서버인지 여부는 중요하지 않습니다.