시뻘건 개발 도전기

#3 : RESTful API 외우지말자 본문

API/RESTful

#3 : RESTful API 외우지말자

시뻘건볼때기 2020. 4. 26. 22:09
반응형

  달달달 외우는 것을 싫어하고 암기력도 좋지 않아서 이과를 선택했다. 뭘 외우고 있는가? 외울 시간에 이해를 하려고하고 적용을 해보려고 해보자.

 

이전 글을 참고하자. 꼭.

 

#1 : RESTful API

개발자라면 RESTful에 대해 한 번이라도 들어 보았을 것이라 생각이 든다. 그러나 정작 "RESTful이 뭐야?"라고 물었을 때 진정으로 정답을 말하기 애매한 것 같다. 실제로 사내 프로젝트로 서버 개발을 했을 때 R..

dotori.ga

위 내용에 덧붙여 더 깊게 알아보자.

 

 

REST의 구성 요소는 다음과 같다.

  • 표현방식 : HTML 등
  • 식별자 : URI
  • 행위 : HTTP

 

REST architecture style

  • Server - Client
    • 자원 제공을 server, 요청을 client가 한다.
    • server에서 rest API를 제공한다.
    • 서로의 의존성 최소화
  • Stateless
    • Client의 session 또는 cookie 등과 같은 context를 신경쓰지 않는다.
    • 이전 요청과 다음 요청에 대해서 연관되지 않는다.
    • 처리방식에 대해 일관성을 부여한다.
  • Cache
    • 웹에서 사용하는 기존 인프라를 고대로 활용할 수 있다. (캐싱 기능 사용)
  • Uniform interface
    • HTTP 표준 프로토콜에 따른 플랫폼에서 모두 사용이 가능하다.
  • Layered system
    • Client는 REST API server만 호출한다.
    • 프록시, 게이트웨이 등과 같은 중간 매체를 사용할 수 있다.
    • 비즈니스로직을 수행하기 전과 후에 보안, 암호화, 로드밸런싱 등을 추가하여 실행할 수 있다.
  • Code on demand
    • 서버로부터 command를 받으면 클라이언트는 수신한 command를 실행한다.
    • Optional이기 때문에 만족하지 않아도 된다.

 

REST의 장점

  1. HTTP 인프라를 사용하므로 REST의 인프라를 따로 생각할 필요 없다.
  2. HTTP 표준의 장점을 고대로 활용이 가능하다.
  3. HTTP를 따른 플랫폼 모두 사용이 가능하다.
  4. 범용성을 보장한다.
  5. server가 어떤 말을 하고 있는지 정확하게 파악이 가능하다. (2020/04/25 - [Architecture/RESTful] - #2 : RESTful Architecture Style 참고)
  6. Server와 Client를 보다 명확하고 확실하게 독립시킨다.

 

 

 

반응형

'API > RESTful' 카테고리의 다른 글

#2 : RESTful Architecture Style  (0) 2020.04.25
#1 : RESTful API  (0) 2020.04.25
Comments