REST API

Mins o o Park·2022년 8월 5일
0

REST API란?

  • REST 기반으로 서비스 API 구현한 것
  • 데이터와 기능의 집합을 제공하여 컴퓨터 프로그램간 상호작용을 촉진하며, 서로 정보를 교환가능 하도록 하는 것


REST 성숙도 모델

REST 성숙도 모델 - 0단계

  • 0단계에서는 단순히 HTTP 프로토콜을 사용하기만 해도 된다
  • 0단계는 REST API를 작성하기 위한 기본 단계
  • HTTP 프로토콜을 사용하는 것만으로도 REST API라고 할 수 없다

REST 성숙도 모델 - 1단계

  • 1단계에서는 개별 리소스(Resource)와의 통신을 준수해야 한다
  • 개별 리소스에 맞는 엔드포인트(Endpoint)를 사용해야하며 요청하고 받는 자원에 대한 정보를 응답으로 전달해야 한다
  • 응답으로 리소스를 전달할 때에도 사용한 리소스에 대한 정보와 함께 리소스 사용에 대한 성공/실패 여부를 반환해야 한다

REST 성숙도 모델 - 2단계

  • CRUD에 맞게 적절한 HTTP 메서드를 사용하는 것에 중점을 둔다
  • GET 메서드 같은 경우는 서버의 데이터를 변화시키지 않는 요청에 사용해야 한다
  • PUT 메서드와 PATCH 메서드도 구분하여 사용해야 합니다. PUT은 교체, PATCH는 수정의 용도로 사용

REST 성숙도 모델 - 3단계

  • HATEOAS(Hypertext As The Engine Of Application State)라는 약어로 표현되는 하이퍼미디어 컨트롤을 적용
  • 2단계와 동일하지만, 응답에는 리소스의 URI를 포함한 링크 요소를 삽입하여 작성해야
  • 응답 내에 새로운 링크를 넣어 새로운 기능에 접근할 수 있도록 하는 것이 3단계의 핵심 포인트



Open API

  • 누구에게나 열려있는 API
  • "무제한으로 이용할 수 있다"라는 의미는 아니다
  • API마다 정해진 이용 수칙이 있고, 그 이용 수칙에 따라 제한사항(가격, 정보의 제한 등)이 있을 수 있다.



API Key

  • API key는 서버의 문을 여는 열쇠이다
  • API Key가 필요한 경우에는 로그인한 이용자에게 자원에 접근할 수 있는 권한을 API Key의 형태로 제공
    -데이터를 요청할 때 API key를 같이 전달해야 원하는 응답을 받을 수 있다

0개의 댓글

관련 채용 정보