RESTful API

Seunghee Ryu·2023년 11월 20일
0

TIL

목록 보기
15/15

API란?

  • 애플리케이션 프로그래밍 인터페이스는 다른 소프트웨어 시스템과 통신하기 위해 따라야 하는 규칙을 정의한다

REST란?

  • Representational State Transfer는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처
  • 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것을 의미
  • 'HTTP URI(Uniform Resource Identifier)'를 통해 자원(Resource)을 명시하고 'HTTP Method(POST, GET, PUT, DELETE, PATCH 등)'를 통해 해당 자원(URI)에 대한 'CRUD Operation'을 적용

REST의 구성

  • 자원(resource) - URI
    - 서버에 존재하는 데이터의 총칭
    - 모든 자원은 고유의 URI(URL)을 가지며 클라이언트는 이 URI를 지정하여 해당 자원에 대해 CRUD 명령을 수행할 수 있다.
  • 행위(verb) - HTTP method
    - 클라이언트가 HTTP Method(GET, POST, PUT, DELETE)를 이용하여 자원을 조작하는 것
  • 표현(Representations)
    - 서버의 행위(verb)에 대한 응답(Json, XML)

사용 이유

  • 가독성이 좋다
  • 클라이언트와 서버를 완전히 분리할 수 있다
  • 특정 데이터를 명확히 표현할 수 있다

self-descriptive message

  • REST 하려면 메세지가 스스로 자신을 설명할 수 있어야 한다

RESTful의 목적

  • 이해하기 쉽고 사용하기 쉬운 REST API를 만드는 것
  • 일관적인 컨벤션을 통한 API의 이해도 및 호환성을 높이는 것이 주된 동기

0개의 댓글