REST API가 뭔가요?

HTTP상 두 노드가 소통하는데 중요한 역할을 담당하는 REST API.
때문에 프론트엔드 개발자도, 백엔드 개발자도 꼭 알고 있어야 하는 개념이죠.

이번 영상에서는 기본적으로 API란 것이 무엇인지부터 시작해서
REST 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

🍿 더 자세한 내용은 영상에서 보실 수 있습니다.





관련 태그의 다른 영상들

HTTPS가 뭐고 왜 쓰나요?
대칭키와 비대칭키 개념과 함께 HTTPS의 목적과 원리를 간략히 알아봅니다.
# https
# 대칭키
# 비대칭키
# 공개키
# 개인키
# 보안
#
PWA가 뭔가요?
떠오르는 모바일 트렌드! PWA는 뭐고 어떻게 만드는지 알아보기로 해요.
# pwa
# natice-app
# 웹-app
# hybrid-app
# cross-platform
#
# mobile
GrqphQL이 뭔가요?
REST API와는 또 다른 신선함! GraphQL의 매력을 알아볼까요?
# graphql
# rest-api
#
REST API가 뭔가요?
웹 개발자라면 꼭 알아야 할 REST API. 쉽게 설명해드립니다.
# rest-api
# api
#
앵귤러, 리액트, 뷰가 뭔가요?
프론트엔드에도 프레임워크가 있다? SPA를 알아봅니다.
# angular
# react
# vue
# spa
# front-end
#
쿠키, 세션, 캐시가 뭔가요?
어렴풋이 알지만 어떻게 다른지 헛갈리는 세 용어. 확실하게 알아보자구요.
# cookie
# session
# cache
#
왜 익스플로러를 싫어하나요?
웹 개발자들의 철천지 원수 익스플로러! 웹표준을 지키자구요.
# browser
# 웹표준
# cross-browsing
# 익스플로러
#
MVC 웹 프레임워크가 뭔가요?
Model? View? Controller? 코드와 함께 쉽게 알아봅니다.
# mvc
# 동적웹
# framework
# library
#
정적 웹은 뭐도 동적 웹은 뭔가요?
왜 HTML, CSS, JS로는 부족할까요? 정적과 동적 웹의 차이를 알아봅니다.
# 정적웹
# 동적웹
#
HTML, CSS JavaScript가 뭔가요?
웹사이트 개발의 핵심이 되는 삼총사! '갖다놓고 꾸미고 시킨다'를 기억하세요.
# html
# css
# javascript
#
# browser
...