REST

POST 응답처리 개선하기

pjh8838 2024. 6. 25. 16:55
반응형

1) status 명시적으로 설정

 

  - 사용자한테 자세한 status를 알려줘야한다

  - ResponseEntity 의 메서드 사용하여 status 값을 반환할 수 있음

 

  - status 값 종류

   200 : 성공

   201 : Create 저장했을 때 성공하면 발생하는 값

   204: No Content

 

   400: ResponseEntity.badRequest().build();

   404 : Not Found

   405: method not  allowed

   500: Internal Server Error

 

Post는 201

 

 


 

2) 링크

 

 


 

3) Hateoas ( 헤이티오스 : ) , REST API 성숙도 모델 4단계 

 

REST API 성숙도 모델

 

보통은 2단계까지만 적용하는데 4단계까지하면 굳

 

ex> 10번을 요청했을때 json만 리턴해준다면

헤이티오스를 쓰면 10번의 링크, 전체 게시판의 링크, 다음 11번의 링크 등 링크로 제공해준다

 

의존성 추가
컨트롤러

 

 

결과

 

 


11.요청한 데이터가 없을 때 처리 방법 개선

 

1) 개요

     요청한 데이터가 없어도 status 값은 200이고 Body는 no content로 반환

     이 상황을 좀 더 직관적인 status 값인 404로 알려주자

 

2) 구현

   가. 사용자 예외 클래스 생성

 

        원래 예외 클래스 만들려면 Exception 상속 받고 try catch 해야되는데 귀찮으니까

         예외처리 안하기 위해서 RuntimeException 을 받는다

 

exception 패키지 만들어서 Exception.java 파일 생성

superclass 만들때

 

 

Exception.java
컨트롤러

 

 

728x90
반응형

'REST' 카테고리의 다른 글

REST 기반의 Spring Security 적용 ( 보통 카피해서 씀 )  (0) 2024.06.26
필터링(filtering)  (0) 2024.06.26
I18N  (0) 2024.06.26
폼 유효성 체크  (0) 2024.06.26
REST 정리 (GET 조회, POST 생성, PUT 수정, DELETE 삭제)  (0) 2024.06.25