[TIL] REST API

krkorklo·2022년 9월 3일
0

TIL

목록 보기
20/29
post-thumbnail

REST API

  • API(Application Programming Interface)는 다른 소프트웨어 시스템과 통신하기 위해 따라야하는 규칙
  • REST API란 Representational State Transfer의 약자로 웹의 장점을 활용할 수 있는 아키텍처

REST의 특징

1) Uniform Interface

  • URI로 지정한 리소스에 대한 조작을 통일되고 한정적인 인터페이스로 수행하는 아키텍처

2) Stateless

  • 작업을 위한 상태 정보를 저장하고 관리하지 않음
  • 세션이나 쿠키 정보를 별도로 저장하고 관리하지 않아 단순히 들어오는 요청만 처리
    → 서비스의 자유도가 높아지고 서버에서 불필요한 정보를 관리하지 않아 구현이 단순!

3) Cacheable

  • HTTP 표준 웹을 사용해 기존 인프라를 활용 가능
  • HTTP 프로토콜 표준에서 사용하는 Last-Modified 태그 등을 활용

4) Self-descriptiveness

  • REST API 메시지만 보고도 쉽게 이해할 수 있는 자체 표현 구조로 구성

5) Client-Server 구조

  • REST 서버는 API 제공 / 클라이언트는 사용자 인증이나 정보를 직접 관리하는 구조로 역할이 구분
  • 클라이언트와 서버에서 개발할 내용이 명확하고 의존성이 줄어듦

6) 계층형 구조

  • 다중 계층으로 구성 가능
  • proxy, gateway와 같은 중간 매체를 사용 가능

REST API 중심 규칙

1) URI는 정보의 자원을 표현 (명사)

2) 자원에 대한 행위는 Method로 표현 (GET, POST, PUT, DELETE 등)

DELETE /member/1
  • POST : 리소스 생성
  • GET : 리소스 조회
  • PUT : 리소스 수정
  • DELETE : 리소스 삭제

참고자료

https://meetup.toast.com/posts/92

0개의 댓글