REST(RESTful) 란??

김영진·2021년 12월 31일

REST

: 프로토콜이 아닌 아키텍처 원칙 세트 => API 개발자는 REST를 다양한 방식으로 구현할 수 있다
: 자원을 이름으로 구분하여 해당 자원의 상태를 주고 받는 것

  • HTTP URI를 통해 자원(Resource)를 명시
  • HTTP Method(POST, GET, PUT, DELETE)를 통해
  • URI에 대한 CRUD를 적용하는 것

REST의 구성요소

  • 자원(Resource) : HTTP URI
  • 자원에 대한 행위 : HTTP Method
  • 자원의 행위에 대한 내용 : HTTP Message Pay Load

REST의 특징

  • 서버 - 클라이언트 구조
  • 무상태
  • 캐시 처리 기능
  • 계층화
  • 인터페이스 일관성

REST API

: REST 아키텍처의 제약 조건을 준수하는 어플리케이션 프로그래밍 인터페이스
=> 한마디로 REST의 원리를 따르는 API

설계 예시

  • URI는 동사보다는 명사, 대문자보다는 소문자를 사용
    X http://localhost:8080/Running
    O http://localhost:8080/run
  • 마지막에 슬래시(/)를 포함 X
    X http://localhost:8080/run/
    O http://localhost:8080/run
  • 언더바 대신 하이폰을 사용
    X http://localhost:8080/my_blog/
    O http://localhost:8080/my-blog
  • 파일확장자는 URI에 포함하지 않음
    X http://localhost:8080/image.jpg
    O http://localhost:8080/image
  • 행위를 포함하지 않는다
    X http://localhost:8080/insert-run/1
    O http://localhost:8080/run/1

1개의 댓글

comment-user-thumbnail
2022년 5월 2일

dd

답글 달기