[네트워크] REST API / RESTful API란?
REST API
◾ REST 원리를 따라 설계된 API
🔹RESTful : REST API의 설계 규칙을 올바르게 지킴
🤷♀️ 그래서 REST가 뭐쥬?
🤝 REST (Representational State Transfer)
◾ 자원을 정의하고 자원에 대한 주소를 지정하는 방법을 일컫는 네트워크 아키텍처 원리
📌 REST 구성 요소
1️⃣ 자원 (Resource) : HTTP URI
🔹URI (Uniform Resource Identifier) : 자원을 식별하기 위한 문자열
2️⃣ 자원에 대한 행위 (Verb) : HTTP Method (GET, POST, DELETE, PUT...)
3️⃣ 자원에 대한 행위의 구체적인 내용 (Representations) : HTTP Message, xml, JSON 등
📌 REST 특징
1️⃣ Server-Client (서버-클라이언트 구조) : 서버와 클라이언트로 분리되며 서로 의존성이 없어야 함
2️⃣ Stateless (무상태성) : 서버는 사용자의 상태 정보를 따로 저장하지 않으며 모든 요청을 새로운 요청으로 인식해 처리함
3️⃣ Cacheable (캐시 처리) : HTTP 등의 네트워크 프로토콜에서 제공하는 캐싱 기능을 적용할 수 있어야 함
4️⃣ Layered System (계층화) : 정보가 계층적으로 분리되어 있어야 함
5️⃣ Uniform interface (인터페이스 일관성) : HTTP 표준인 URL과 응답 코드, 요청-응답 방식을 이용
6️⃣ Self-descriptiveness (자체 표현) : API로 전송되는 내용은 별도 문서 없이 쉽게 이해할 수 있는 자체 표현 구조를 지녀야 함
📌 REST 장단점
✅ 장점
◽ HTTP 프로토콜을 그대로 사용해 별도의 인프라를 구축할 필요가 없음
◽ HTTP 프로토콜을 사용하는 모든 플랫폼에서 사용 가능
◽ 설계 의도를 쉽게 파악할 수 있음
◽ 서버와 클라이언트의 역할 명확하게 분
✅ 단점
◽ HTTP 메소드 형태가 제한적
◽ 구형 브라우저에서 호환되지 않음
📌 RESTful API 설계 규칙
◾ 어떠한 요청인지 쉽게 인식될 수 있어야 함
1️⃣ 명사, 소문자 사용o / 동사, 대문자 사용x
👍 http://coding.com/result
2️⃣ 마지막에 슬래시x
3️⃣ 하이픈o / 언더바x
4️⃣ 파일 확장자x
5️⃣ 자원 행위 명시x
📋 요약
REST란
1.HTTP URI를 통해 자원을 명시하고
2.HTTP 메소드를 통해
3.해당 자원에 대한 CRUD를 실행하는 것
참고 자료
https://stdio-han.tistory.com/88
REST API란?
REST API란? REST : Representational State Transfer 의 약자로 '네트워크에서 통신을 구성할 때 이런 구조로 설계하라는 지침' 정도로 볼 수 있다. API : ApplicationProgrammingInterface 의 약자로 응용 프로그램 프로
stdio-han.tistory.com
[네트워크] REST API란? REST, RESTful이란?
REST API란 REST를 기반으로 만들어진 API를 의미합니다. REST API를 알기 위해 REST부터 알아보도록 하겠습니다. REST란? REST(Representational State Transfer)의 약자로 자원을 이름으로 구분하여 해당 자원의 상
khj93.tistory.com
https://ko.wikipedia.org/wiki/REST
REST - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 대한민국의 힙합 음악가에 대해서는 R-EST 문서를 참고하십시오. 다른 뜻에 대해서는 레스트 문서를 참고하십시오. REST(Representational State Transfer)는 월드 와이드
ko.wikipedia.org