본문 바로가기

개발지식

나도 설명하고 싶다! REST API

오랜만에 만난 친구랑 대화하다가 이런 질문을 받았습니다.

근데, REST API가 뭘 만드는 거야?

머리로는 이해한다고 생각했는데, 입이 안 떼어지는 경험 다들 있으신가요?🤐

대충 얼버무렸던 그 날의 기억이 떠올라 포스팅을 적게 되었습니다.


로이 필딩은 박사 학위 논문에서 웹(HTTP)을 위한 아키텍처로 REST를 소개했습니다.

저는 '아키텍처니까 HTTP를 어떻게 구성하고 동작시킬지에 대한 설계도구나' 정도로 이해했습니다.

이제 REST API 설계에 대해 조금 더 자세히 알아볼까요?

 

✍설계할 때는 크게 두 가지를 명심!

  • 정보의 자원은 URI로 표현합니다.
  • 자원에 대한 행위는 HTTP 메소드로 표현합니다.

 

🔍 URI 설계 규칙을 알아보자

  • 계층 관계는 슬래시를 활용하여 표현합니다. 그리고, 혼동을 방지하여 경로 마지막에는 슬래시를 붙이지 않습니다.
  • 밑줄 대신 하이픈을 사용합니다.
  • 소문자를 사용합니다.
  • 파일 확장자를 사용하지 않습니다.

 

🤷‍♂️ HTTP 메소드는 역할이 뭐야?

  • 자원을 가져올 때는 GET을 사용합니다.
  • 자원을 생성할 때는 POST를 사용합니다.
  • 자원을 수정할 때는 PUT을 사용합니다.
  • 자원을 삭제할 때는 DELETE를 사용합니다.

서비스를 개발하기 전에 명확한 규칙을 익히고 있다면

좀 더 생산적인 개발이 될 것이라고 생각합니다.

오늘 포스팅에서 사실과 다른 내용이 있다면 지적 부탁드립니다.

봐주셔서 감사합니다!