위키 백과와 웹 서핑을 통해 고수님들 자료들을 참고하면서 지식을 채워봅니다.

REST(respresentational state transfer) 네트워크 아키텍처의 원리

  • 클라이언트/ 서버 구조 : 일관적인 인터페잇로 분리 되어야 함
  • 무상태 : 요청 간 클라이언트의 콘텍스트가 서버에 저장되어서는 안 됨
  • 캐시 처리 가능 : 클라이언트는 응답을 캐싱할 수 있어야 함
  • 인터페이스 일관성 : 단순화하고 작인 단위로 분리함으로써 클라이언트와 서버 파트가 독립적이어야 함

주요 목표

  • 구성 요소 상호작용의 규모 확장성
  • 인터페이스의 범용성
  • 구성 요소의 독립적 배포
  • 중간적 구성 요소를 이용해 응답 지연을 감소, 보안을 강화

개념
HTTP URI를 통해 자원을 명시하고 HTTP method를 통해 해당 자원에 대한 CRUD operation을 적용하는 것

구성요소
resource
아이디를 가지는 리소스가 서버에 존재하고 클라이언트는 각 리소스의 상태를 조작하기 위해 요청을 보냄/ http에서 리소스를 구별하기 위한 아이디는 uri임

method
get,post,put,delete 같이 리소스를 조작할 수 있는 것을 메서드라고 함
클라이언트는 uri를 이용해 리소스를 지정하고 리소스를 조작하기 위해 메서드를 사용함

representation of resource
클라이언트가 서버로 요청을 보냈을 때 서버가 응답을 보내주는 리소스의 상태를 레프리젠테이션이라고 함/ rest에서 하나의 리소스는 여러 형태의 레프리젠테이션으로 나타내어 질 수 있음