REST API가 뭔가요?
HTTP상 두 노드가 소통하는데 중요한 역할을 담당하는 REST API.
때문에 프론트엔드 개발자도, 백엔드 개발자도 꼭 알고 있어야 하는 개념이죠.
이번 영상에서는 기본적으로 API란 것이 무엇인지부터 시작해서
REST API의 개념과 특징, 그리고 구현 방법을 알아보겠습니다.
추가 추천영상
REST API의 바람직한 구현에 대한 이응준 발표자님의 명강입니다.
🔗 REST API 튜토리얼 사이트
- REST API를 바람직하게 설계할 수 있도록 상세한 튜토리얼과 가이드라인을 제공하는 사이트입니다.
REST API 가이드
등의 키워드로 검색하시면 좋은 한글 자료들도 만나보실 수 있습니다. 🤓
🎬 영상 주요 포인트
🎮 API의 개념
어떤 기계를 만들면, 사용자가 그 기능들을
전부 활용할 수 있도록 제어장치를 마련해야 해요.
예를 들어 TV는, 사용자가 그걸 켜거나 끄고,
채널을 선택하고, 음량을 조절할 수 있게 해줘야 하죠.
그래서 리모컨이 있는거에요.
같은 이유로 자판기에는 버튼들이 있고
컴퓨터에는 키보드와 마우스가 있죠.
이런 것들을 ‘인터페이스’라고 불러요.
기계와 인간 간의 소통창구인거죠.
사용자가 명령을 넣는 것 뿐 아니라,
그 결과와 정보들을 받아오기 위한
TV의 스크린, 컴퓨터의 모니터 또한
이 인터페이스에 속해요.
소프트웨어의 영역으로 들어가볼까요?
컴퓨터나 스마트폰을 켜보면
사용자들이 프로그램이나 사이트, 앱을
원하는대로 제어하고 정보를 볼 있도록
버튼, 스크롤바, 슬라이더, 브라우저 창 등
소프트웨어적인 장치들이 마련돼있죠.
UI란 말 많이 들어보셨을거에요.
소프트웨어와 인간의 소통을 위한
User Interface인거에요.
하지만 IT세계에는 우리 눈에
직접 보이지 않는 영역들이 더 많죠.
기계와 기계, 소프트웨어와 소프트웨어 사이에도
수많은 요청과 정보 교환이 이뤄지고 있어요.
이들 사이에도 소통할 수 있는 창구가 필요한거죠.
...
이처럼 소프트웨어가 다른 소프트웨어로부터
지정된 형식으로 요청, 명령을 받을 수 있는 수단을
Application Programming Interface
API라고 해요.
🛋 REST API의 개념
REST의 가장 중요한 특성은
각 요청이 어떤 동작이나 정보를 위한 것인지를
그 요청의 모습 자체로 추론 가능하다는거에요.
...
RESTful하게 만든 API는 요청을 보내는 주소만으로도
대략 이게 뭘 하는 요청인지 파악이 가능해요.
...
자원을 구조와 함께 나타내는
이런 형태의 구분자를 URI라고 해요.
그런데 이런 조회작업 뿐 아니라, 정보를 새로 넣거나
수정하거나 삭제하는 작업도 필요하죠.
이들을 통들어서 C.R.U.D, CRUD라고 불러요.
서버에 REST API로 요청을 보낼 때는
HTTP란 규약에 따라 신호를 전송해요.
...
하지만 누구든 각 요청의 의도를 쉽게 파악할 수 있도록
RESTful하게 API를 만들기 위해서는
이들을 목적에 따라 구분해서 사용해야 해요.
📝 용도별 REST API 요청 예제
CREATE: 2번 클래스에 학생 새로 넣기
POST 요청
https://(도메인)/classes/2/students
→ 새 학생의 정보를 body 안에 실어보냄
READ: (1) 2번 클래스의 학생들 보기
GET 요청
https://(도메인)/classes/2/students
READ: (2) 2번 클래스의 14번 학생 보기
GET 요청
https://(도메인)/classes/2/students/14
UPDATE: 2번 클래스의 14번 학생 정보 변경
PUT 요청
https://(도메인)/classes/2/students/14
→ 학생의 바뀐 정보를 body 안에 실어보냄
또는
PATCH 요청
https://(도메인)/classes/2/students/14
→ 서버가 특정 방식으로 학생의 일부 정보를 변경
DELETE: 2번 클래스의 14번 학생 삭제
DELETE 요청
https://(도메인)/classes/2/students/14
🍿 더 자세한 내용은 영상에서 보실 수 있습니다.
유튜브에서 영상 보기