ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • API METHOD PATCH vs PUT
    Server 2022. 11. 15. 23:28

    레이어드 아키텍쳐로 API를 작성하며 PATCH 메소드로 "게시물 수정 엔드포인트"를 작성했는데 문제가 생겼다.

     

    분명 PATCH 메소드 "리소스의 일부분을 수정한다"는 메소드이므로

    request의 body에 수정이 필요한 데이터만 담아서 보내주면 되는 메소드라고 생각했는데,

    작성한 코드로 Postman 통신을 하면, request body에 담아주지 않은 값은 null 값으로 값이 대체되었다.

     

    왜 이런 문제가 생기는지 궁금했고 어떻게 구현해야할지 고민되어 구글링한 결과 이런 결론을 얻었다.

     

    1. 프론트에서 정보 수정 요청을 보낼 때, 수정되어야 하는 정보가 담긴 테이블의 전체 column 값을 보내준다.

    -> 물론 그 data는 서버로부터 GET으로 받아온 데이터 중 수정사항과 원본을을 함께 request body에 포함하여 보낸다.

    2. 즉, 서버는 프론트가 수정하고자 하는 정보가 무엇인지 알 필요가 없으므로 굳이 PATCH 보다는 PUT으로 구현한다.

    'Server' 카테고리의 다른 글

    HTTP 상태코드 정리  (0) 2022.12.23
    REST API (path parameter, query parameter)  (0) 2022.11.20
    백엔드 API 패턴 - Layered Architecture  (0) 2022.11.15
    [생활코딩] Home Server  (0) 2022.10.01

    댓글