RESTfull API

안정태·2021년 5월 4일
0

Study

목록 보기
19/33

RESTfull?

API를 작성할 때, 리소스에 따라서 서로 다른 API규칙이 있다. 이 부분을 해결하기 위해 등장한 것이 바로 RESTfull API(rePresentational State Transfer) 이다. 이는 아키텍처의 제약 조건을 준수하는 애플리케이션 프로그래밍 인터페이스를 뜻한다. 즉, 웹 서비스를 만드는데 사용되는 제약모음으로 API를 만드는 규약 정도로 이해하면 된다.

RESTfull의 6자기 제약

  • Client-Server : 서로 상호무관하게 작성해야 한다.
  • Stateless : 무상태성, 접속했다는 사실을 기억해서는 안된다.
  • Cacheable : 관련 정보를 서버에 저장할 수 있어야한다.
  • Uniform interface : 동일한 인터페이스
  • Layered system : 각 영역이 나뉘어져 있어야한다.
  • Code on demand : 실행가능한 코드를 내려줘야 한다.

여기서 상위 5가지 규칙은 HTTP를 잘 작성하면되고 마지막 규칙은 Javascript의 영역이다. 우리는 여기서 더 자세히 알아야 하는 영역은 Uniform interface이다.

Uniform interface

Uniform interface를 실현하기 위해서는 다음 규칙을 지켜서 네이밍을 하면 된다.

  1. 리소스를 나타내는데 명사를 사용해라
    리소스의 4가지 대분류 : document/collection/store/controller

  2. 일관성있게 작성해라

  • 계층구조를 나타낼 때는 /를 사용하라
  • URI 끝에 /를 붙이지 마라
  • URI의 가독성을 높이기 위해 -를 사용하라
  • _를 사용하지 마라
  • URI에 소문자를 사용하라
  • 파일 확장자를 사용하지 마라
  1. CRUD 기능 이름은 URI에 사용하지 마라
    어차피 어떤 기능을 하는지는 충분히 유추가 가능하다.

  2. filter가 필요하면 query component를 사용하라

profile
코딩하는 펭귄

0개의 댓글