업무에서 Web 프로그래밍을 해보게 되었는데, 이왕할거 제대로 해보자는 생각에 Rest 하게 설계해보았다.
(Test Monitoring Web App이다.)
이에 대해서 조금씩 모았던 정보를 정리해본다.
REST : Representational State Transfer
- 자원의 이름으로 구분하여 해당 자원의 상태를 주고받는 것
- 자원 기반 구조 설계의 Resource를 HTTP Method로 CRUD Operation이 적용되게 설계한 아키텍처이다.
다음과 같이 HTTP Method와 CRUD Operation 이 연결된다.
작업 | HTTP Method | CRUD |
생성 | Post | Create |
조회 | Get | Read |
수정 | Put | Update |
삭제 | Delete | Delete |
특징
1. Stateless
- 요청간에 클라이언트의 정보가 저장되지 않으며, 각 요청이 독립적임.
2. Client-Server
- 자원이 있는 쪽이 Server, 자원을 요청하는 쪽이 Client
3. Cacheable
- 웹 표준 HTTP를 사용하므로, 웹 인프라 사용 가능
장점
- HTTP 프로토콜의 인프라를 그대로 사용
- 나타나는 바가 명확함.
단점
- 표준이 존재하지 않는다.
- 사용 가능한 Method가 제한적이다.
참고.
1. https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html
2. https://www.redhat.com/ko/topics/api/what-is-a-rest-api
'html,css,js' 카테고리의 다른 글
html 새 창 띄우기 (0) | 2021.09.27 |
---|---|
css로 html 링크 색 수정하기 (0) | 2021.09.24 |