강의/스프링 기반 REST API 개발

[REST API 및 프로젝트 소개] REST API

해당 글은 인프런의 '백기선님의 스프링 기반 REST API 개발' 강의를 들으며 정리한 글입니다.

 REST API

해당 강의에서는 REST API가 무엇인지에 대해서 이야기 하였다.

오늘날 대부분의 REST API 라고 주장하는 api는 실질적으로 WEB API, HTTP API 정도라고한다.

 

우선 여기서 API는 Application Programing Interface이며, REST는 다음과 같다.

  • REpresentational State Transfer
  • 인터넷 상의 시스템간 상호 운용성(interoperabilty)를 제공하는 방법중 하나
  • 시스템 제각각의 독립적인 진화를 보장하기 위한 방법
  • REST아키텍쳐 스타일을 따르는 API

그러면 REST API라고 불리기 위해서는 어떠한 조건들을 만족해야할까?

 

REST 아키텍쳐

  • Client-Server
  • Stateless
  • Cache
  • Uniform Interface
    • Identification
    • Manipulation
    • self-descrptive
  • Layered System
  • Code-on-Demand