일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 성능최적화
- 티스토리꾸미기
- react
- utilty type
- 리액트
- 누구나 자료구조와 알고리즘
- 2022
- NonNullable
- 공통컴포넌트
- 타입스크립트
- reactjs
- JS console
- 타입좁히기
- 반복줄이기
- const 단언문
- TSDoc
- Chart.js
- 폰트적용하기
- 개발콘텐츠
- 제네릭
- 레이아웃쪼개기
- vue.js
- React.js
- React Native
- CSS
- typescript
- javascript
- returnType
- 커스텀
- click and drag
- Today
- Total
몽땅뚝딱 개발자
API와 REST API 본문
내가 정의해 본 REST API는 단순하게 말해서 'HTTP를 활용하여 CRUD를 실행하는 API'이다.
지금껏 REST API라고 생각하며 코드를 완성해왔지만 'REST API가 뭔가요?'라고 물었을 때 잘 대답하지 못할 것 같았다.
다시 한 번 정리를 해보는 시간을 가져본다.
◽ API(Application Programming Interface)란?
인터페이스는 어떤 장치끼리 정보를 교환하기위한 수단이나 방법이다.
응용프로그램 프로그래밍 인터페이스, 말 그대로 프로그램을 위한 인터페이스이다.
즉, API는 클라이언트나 서버같은 다른 프로그램끼리 데이터를 주고받는 방법, 규격이라고 정의내릴 수 있다.
◽ REST API란?
REST API는 일종의 아키텍쳐이며, 웹을 위한 네트워크 기반 아키텍쳐라 할 수 있다.
REST는 Representational State Transfer의 줄임말로, 직역하면 '대표적 상태 전달'인데 어떤 뜻인지 명확히 다가오진 않는다.
찾아보니 개인적으로 해석하는 경우가 많아 생략하며, 구성요소를 통해 이해하는게 더 빠르다고 생각된다.
REST API를 구성하는 요소는 총 3가지이다.
1. 자원(Resource): URI를 이용하여 자원을 표현한다.
2. 행위(Verb): HTTP 프로토콜의 Method로 행위를 표현한다.
3. 표현(Representation of Resource): 응답, 결과
즉, 존재하는 많은 자원들 중 URI를 부여하여 자원을 명시하고(=이름을 정해주고) ==> 1. 자원(Resource)
HTTP Method(GET, POST, PUT, DELETE)를 통해 해당 자원에 대한 CRUD를 통해 ==> 2. 행위(Verb)
데이터를 처리하는 것이라고 ==> 3. 표현(Representation of Resource)
설명할 수 있을 것 같다.
◽ HTTP method의 종류
- GET, POST, PUT, DELETE가 가장 대표적으로 많이 사용되는 메소드이다.
- 그 외에는 HEAD, CONNECT, OPTIONS, TRACE, PATCH가 있다.
◽ URL 구성 시 주의점
[Spring Boot] REST API 사용 시 URL 구성 주의점
REST API의 HTTP methods는 GET, POST, DELETE, PUT 등 많은 종류가 있다. 예전 프로젝트에서는 이들의 차이점을 모른 채 GET, POST만 사용했었다. 잠시 잊고 있던 찰나, 오늘 유튜브 알고리즘에 유튜버 노마드
be-a-weapon.tistory.com
참조 및 출처
[Network] REST란? REST API란? RESTful이란? - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
REST에 대하여
REST란? | 직역 해석 REpresentational State Transfer = 대표(표상)적인 상태 전달 > 자원을 이름으로 구분하여 해당 자원의 상태(정보)를 주고받는 모든 것을 의미한다. Roy Fielding 2000년 박사학위 논문에..
wr-nood.tistory.com
개인적으로 공부한 내용을 정리하는 블로그로
잘못된 개념을 게시하지않도록 주의하고 있으나 오류가 있을 수 있습니다.
'Development > API' 카테고리의 다른 글
[Spring Boot] Instance 여러개 띄우기 / 랜덤 포트 설정 (0) | 2021.10.27 |
---|---|
[Spring Boot] @RequestParam과 @PathVariable의 차이점 (0) | 2021.10.18 |
REST API 사용 시 URL 구성 주의점 (0) | 2021.10.14 |