REST API
2023. 1. 12. 18:02ㆍStudy/SpringBoot
728x90
Representational State Transfer - REST 아키텍쳐 스타일
아키텍처 패턴은 반복되는 문제 상황을 해결하는 도구이고 스타일은 반복되는 아키텍처 디자인을 의미한다.
REST는 6가지 제약조건을 가지며 이 가이드라인을 모두 따르는 API를 RESTful API라고 한다.
REST 제약
- 클라이언트 서버
- 상태가 없는 (stateless 클라이언트가 서버에 요청을 보낼때 이전 요청의 영향을 받지 않음을 의미한다)
- 캐시되는 데이터 (서버에서 리소스를 리턴할 때 캐시가 가능한지 명시 할 수 있어야 한다. HTTP에서는 cache-control 헤더에 명시 가능)
- 일관되는 데이터
- 일관적인 인터페이스(URI의 형태라거나 리소스의 리턴 형식 등)
- 레이어 시스템(클라이언트와 서버 사이에 인증서버,캐싱서버,로드밸러서 등의 여러 레이어가 존재 할 수 있지만 요청과 응답에 영향을 미치지 않으며 클라이언트는 이 레이어의 존재 유무를 알 수 없다)
- 코드-온-디맨드(선택사항) (클라이언트가 서버에 코드를 요청 할 수 있고 서버가 리턴한 코드를 실행할 수 있다.
728x90