On the journey of
[세미나] Postman과 Firebase로 Rest API 톺아보기 (1) 본문
* 이 포스트는 3차 세미나 (2)를 준비해주신 두 부원분의 강의를 기준으로 작성되었음을 밝힙니다.
01. REST API에 대해 알아보자.
1, REST API란 뭘까?
기본적으로 REST는 Representational State Transfer의 약자로, 자원을 이름으로 구분해 해당 자원의 상태를 주고받는 모든 것을 의미한다. 자원은 서버에 존재하는 모든 데이터의 총칭으로, 고유의 URL을 가지며 클라이언트는 이 URL(URI)를 지정해 해당 자원에 대해 CRUD Operation(명령어)을 수행한다.
이외에 '행위'는 클라이언트가 HTTP Method를 사용해 자원을 조작하는 것을, '표현'은 클라이언트가 자원을 조작하면 서버가 HTTP Pay Load를 통해 응답을 보내는 것을 의미한다.
2. REST의 특징?
REST는 크게 6가지 특징이 있다. 각 특징을 알아보자.
- Uniform Interface : URI로 지정한 리소스에 대한 조작이 한정적이고 제한됨
- Stateless : 작업을 위한 상태정보를 별도로 저장/관리하지 않음 - 들어오는 요청만 처리하면 된다(구현 단순함).
- Cacheable : 웹에서 사용하는 기존 인프라를 그대로 사용할 수 있다. 때문에 HTTP의 캐싱 기능을 그대로 사용 가능!
- Self-descriptiveness : 메시지만 보고도 명령 등을 이해할 수 있는 구조이다.
- Client - Server : API를 제공하고, 클라이언트는 사용자 인증 등을 진행하는 등 각 역할이 구분되어 있다.
- Layered System : 다중계층 구성으로, 보안, 암호화 계층 등의 추가로 구조상의 유연성을 추가할 수 있다. 또한 Proxy 등의 중간매체도 사용할 수 있다.
3. CRUD 명령어
1에서 클라이언트가 해당 자원에 대해 CRUD 명령어를 수행할 수 있다고 했다. 이 크루드는 뭐냐 하면!
- Create : Post 방식 - POST를 통해 해당 URI를 요청하면 resource를 생성한다.
- Read: GET - GET을 통해 해당 리소스를 조회하고 해당 도큐먼트에 대한 자세한 정보를 가져온다.
- Update : PUT/PATCH - PUT을 통해 해당 리소스를 수정한다.
- Delete: DELETE을 통해 해당 리소스를 삭제한다.
4. REST API 생성 규칙
- URI는 정보의 자원을 표현해야 한다. 또한 리소스명에는 동사보다는 명사를, 대문자보다는 소문자 사용이 권장된다.
- 자원에 대한 행위는 HTTP Method로 표현하며, 여기서 Get, Post, Put, Patch, Delete 등이 사용된다.
- 슬래시 구분자(/)는 계층 관계를 나타내는 데 쓰이며, URI 마지막 문자로 슬래시를 포함하지 않는다.
- 하이픈(-)은 가독성을 높이는 데 쓰이며, 밑줄(underbar, _ )는 URI에 포함되지 않는다.
'학교 프로그램 > SOLUX' 카테고리의 다른 글
[프로젝트] MySQL 활용하기 (0) | 2023.07.30 |
---|---|
[세미나] Postman과 Firebase로 Rest API 톺아보기 (2) (0) | 2023.06.04 |
[3차 세미나] 배워두면 개발할 때 잘 써먹는 Git 씹어먹기 (3) (3) | 2023.05.30 |
[3차 세미나] 배워두면 개발할 때 잘 써먹는 Git 씹어먹기 (2) (2) | 2023.05.30 |
[3차 세미나] 배워두면 개발할 때 잘 써먹는 Git 씹어먹기 (1) (0) | 2023.05.29 |