이전글 :
2020/04/23 - [NETWORK] - REST 란?
▶ REST API 이란?
- REST기반으로 서비스 API를 구현한 것
▶ REST API 특징
- REST 기반으로 시스템을 분산해 확장성과 재사용성을 높여 유지보수 및 운용을 편리하게 할 수 있다.
- REST는 HTTP 표준을 기반으로 구현하므로, HTTP를 지원하는 프로그램 언어로 클라이언트, 서버를 구현할 수 있다.
- 즉, REST API를 제작하면 델파이 클라이언트 뿐 아니라, 자바, C#, 웹 등을 이용해 클라이언트를 제작할 수 있다.
▶ REST API 설계 기본 규칙
※ 참고
도큐먼트 : 객체 인스턴스나 데이터베이스 레코드와 유사한 개념
컬렉션 : 서버에서 관리하는 디렉터리라는 리소스
스토어 : 클라이언트에서 관리하는 리소스 저장소
- URI는 정보의 자원을 표현
→ resource는 동사보다는 명사를, 대문자보다는 소문자를 사용한다.
→ resource의 도큐먼트 이름으로는 단수 명사를 사용해야 한다.
→ resource의 컬렉션 이름으로는 복수 명사를 사용해야 한다.
→ resource의 스토어 이름으로는 복수 명사를 사용해야 한다
- 자원에 대한 행위는 HTTP Method(GET, PUT, POST, DELETE 등)로 표현
→ URI에 HTTP Method가 들어가면 안된다.
→ URI에 행위에 대한 동사 표현이 들어가면 안된다.(즉, CRUD 기능을 나타내는 것은 URI에 사용하지 않는다.)
→ 경로 부분 중 변하는 부분은 유일한 값으로 대체한다.
▶ REST API 설계 규칙
-
▶ 예시
▶ RESTful 이란?
- 레스트풀은 일반적으로 REST라는 아키텍처를 구현하는 웹 서비스를 나타내기 위해 사용되는 용어이다.
- 레스트풀은 REST를 REST답게 쓰기 위한 방법으로, REST 원리를 따르는 시스템을 RESTful이란 용어로 지칭된다.
▶ RESTful 목적
- 이해하기 쉽고 사용하기 쉬운 REST API를 만드는 것
- RESTful한 API를 구현하는 근본적인 목적이 성능 향상에 있는 것이 아니라 일관적인 컨벤션을 통한 API의 이해도 및 호환성을 높이는 것이 주 동기이니, 성능이 중요한 상황에서는 굳이 RESTful한 API를 구현할 필요는 없다.
※ 응답상태코드 1xx : 전송 프로토콜 수준의 정보 교환 |
* 추후 추가 예정
참고 :
https://www.a-mean-blog.com/ko/blog/%ED%86%A0%EB%A7%89%EA%B8%80/_/REST%EC%99%80-RESTful-API
https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html
'* NETWORK' 카테고리의 다른 글
REST 란? (0) | 2020.04.23 |
---|---|
웹소켓(WebSocket)이란? (0) | 2020.04.20 |
포트포워딩 이란? (0) | 2020.04.17 |