Developer N
[Spring] ResponseEntity(HttpStatus) 본문
728x90
ResponseEntity란?
- HttpEntity를 상속받아 결과 데이터와 HTTP 상태 코드를 직접 제어할 수 있는 클래스
- 사용자의 HttpRequest에 대한 응답 데이터가 포함됨
- 에러 코드와 같은 HTTP 상태 코드를 전송하고 싶은 데이터와 함께 전송할 수 있다. 따라서 좀더 세밀한 제어가 필요한 경우 사용하는 편
- 빌더 형식과 객체 생성 둘다 사용 가능
ResponseEntity 구조
- HttpStatus
- HttpHeaders
- HttpBody
ResponseEntity 메서드 및 HTTP
- toString()
- status, body, headers 순으로 출력
- ResponseEntity.ok().build()
- 200 OK status 코드를 반환하는 빌더 메서드
- body를 넣을수도 있고 안넣을 수도 있다. (단, body를 넣을 때에는 Null 사용불가)
- 200 OK
- HTTP 200 ok는 요청을 성공했음을 나타내는 성공 응답 상태 코드.
- 200 응답은 기본적으로 캐시 가능
- 성공의 의미는 HTTP 요청 메서드에 따라 나뉨
- GET : 리소스를 가져왔고 메시지 본문으로 전송됨
- HEAD : 메시지 본문 없이 표현 헤더가 응답에 포함되어 있음
- POST : 리소스가 명시하는 행동의 결과가 메시지 본문에 전송되었음
- TRACE : 서버가 요청받은 메시지가 메시지 본문에 포함되어 있음
- PUT 또는 DELETE의 성공 결과는 종종 200 ok가 아니라 204 No Content (리소스를 새로 생성한 경우 201 Created)
- 참고 https://developer.mozilla.org/ko/docs/Web/HTTP/Status/200
- of()
- 주어진 본인을 옵셔널로 받아 비어있는 경우 NotFound 상태로 반환, body가 있을 경우 OK status로 반환
- ResponseEntity.InternalServerError().build()
- 500 Internal Server Error 코드를 반환하는 빌더 메서드
- HTTP(하이퍼텍스트 전송 프로토콜) 서버 에러 응답 코드는 요청을 처리하는 과정에서 서버가 예상하지 못한 상황에 놓였다는 의미
- 참고 https://developer.mozilla.org/ko/docs/Web/HTTP/Status/500
- 500 Internal Server Error 코드를 반환하는 빌더 메서드
그외 http status code (계속 추가 예정)
- http status code 401(Unauthorized)
- 이 클라이언트 오류 상태 응답 코드는 리소스를 접근할 자격이 없다는 뜻. 따라서 요청이 받아들여지지 않고 에러 발생
- 서버가 인식할 수 없는 잘못된 로그인 자격 증명을 제공했을 때 발생
- URL 확인하기
- 로그인 자격 증명 확인하기
- 브라우저 기록 삭제 및 쿠키 삭제
참고)
https://thalals.tistory.com/268
https://m.blog.naver.com/zzang9ha/221901460077
728x90
'STUDY > JAVA | SPRING' 카테고리의 다른 글
[Java] 로깅(logging) 사용 방법 (0) | 2023.02.27 |
---|---|
[Java] HttpServletRequest 사용하여 주소 정보 가져오기 (0) | 2023.02.24 |
[JPA] Pageable을 활용한 Pagination (0) | 2023.02.21 |
[JPA] JPA 사용법 (0) | 2023.02.21 |
[JPA] JPA(Java Persistence API)란? (0) | 2023.02.21 |
Comments