Restful API란?

nevermind·2022년 12월 23일
0

기술면접

목록 보기
18/25

REST란?

  • 자원의 표현(자원의 이름)에 의한 상태(정보)전달이다

    • 자원의 표현 : DB가 쇼핑 목록일때, list를 자원의 표현으로 정한다
    • 상태 전달 : 데이터가 요청되어지는 시점에서 자원의 상태를 전달하는 것
  • 네트워크 상에서 Client & Server 사이의 통신 방식 중 하나이다

  • HTTP URI를 통해 자원을 명시하여 HTTP Method(POST, GET, PUT,DELETE)를 통해 해당 자원에 대한 CRUD Operation 을 적용한다

    • HTTP URI는 웹사이트의 이미지, 텍스트, DB내용 등 모든 자원에 고유한 ID인 HTTP URI 부여한다
  • 구성 요소 :

    • 자원(URI: 고유한 ID)
    • 행위(HTTP Method: Post,Get,Put,Delete)
    • 표현(데이터를 주고 받는 것(JSON, XML,TEXT 등)
  • 특징:
    - Server-Client구조(자원이 있는 쪽: Server, 요청하는 쪽: Client)
    - Stateless(무상태성): Client의 정보를 서버에 저장하지 않는다, 각각의 요청을 별개로 인식하고 요청 수행

REST API

  • REST를 기반으로 API를 구현하는 것
    - API: 서로 정보교환이 가능하도록 하는 것

  • 특징:
    REST는 HTTP 표준을 기반으로 구현하기에 HTTP를 지원하는 프로그램 언어로 클라이언트, 서버를 구현할 수 있다.

  • 설계 예시

RESTful

  • REST API를 제공하는 웹서비스를 RESTful하다라고 한다
  • 사용목적은 이용하고 이해하기 쉬운 REST API를 만드는 것
  • RESTful 하지 못한 경우 :
    • CRUD기능을 모두 POST형식으로만 처리하는 API
    • Route에 resource,id 외의 정보가 들어가는 경우

출처: https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html
https://www.slipp.net/wiki/pages/viewpage.action?pageId=12878219

profile
winwin

0개의 댓글