ㅠㅠ.. 이제 17번째 포스팅을 적고 있군요
코로나 감염으로 한 주 건너뛰기는 했지만,
지난 스터디에 나왔던 내용들 정리와 구현 내용에 대해서 공유해보려고 합니다~!
임시 저장에 대한 API 네이밍을 어떻게 가져가면 좋을까?
지난 시간에 임시 저장에 대한 API 네이밍을 어떻게 가져가면 좋을지에 대해 이야기했었습니다.
그래서 REST 관련된 개념들을 학습했는데, 이번 주제와 관련 있는 거 위주로 소개를 드리겠습니다.
REST API의 목적은 이해하기 쉽고 사용하기 쉬운 API를 제작하는데에 있다.
성능 향상과 같은 정답이 정해진 문제가 아니기 때문에 동료들과 합의하에 일관성있는 룰로 정해서 가독성을 높이는 것이 포인트이다.
그래서 정해진 정답은 없지만 이렇게 해보니 좋더라~
라는 예시 케이스들을 많이 소개하고 있어서
공유하고 넘어가려고 합니다!
API라는 것은 결국 서버의 자원에 접근하는 행위.
그래서 서버가 가진 리소스의 성격에 따라 주로 네 가지로 분류하는 경우가 많았습니다.
분류를 해놓아야 좀 더 일관성있는 네이밍 부여가 가능해지기 때문이죠!
1) REST 관련 개념 정리
2) REST 네이밍 관련 링크
3) REST API 정리
포스팅 작성 중 임시 저장, 수정하기의 경우 uri를 어떻게 정하는 것이 좋을까?
POST ('/write')
PUT ('/write')
POST ('/write/tempsave')
임시 저장된 포스트는 오로지 출간하기를 통해서만 삭제된다.
클라이언트에서는 /write/tempsave API를 30초마다 호출하면서 현재 PostData를 넘겨준다.
- useEffect에서 interval 함수 등록
임시 저장 시나리오를 고려하여 마지막에 임시 저장된 포스트를 삭제하는 로직을 추가하였습니다.
makeTempSaveQuery 함수 내부에서 아까의 플로우 차트에 따른 query 생성