REST API가 뭔가요?

·2025년 1월 31일

필수영상

목록 보기
19/40

REST API가 뭔가요?

이 영상은 진정한 의미의 REST API가 뭔가가 아니라, 개발자들이 일반적으로 알고 쓰는 수준의 REST API 설명!!

REST API는 정보들이 주고받는데 있어서 개발자들 사이에 널리 쓰이는 일종의 형식
어떤 기술이나 제품이 아니라 형식이기 때문에 어떤 프로그래밍 언어를 쓰든, 뭐에다 소프트웨어를 만들든 이 폼에 맞춰서 기능을 만들어내면 되는것이다.

REST API(Representational State Transfer API)

HTTP 프로토콜을 기반으로 클라이언트와 서버가 데이터를 주고받는 방식.
웹 서비스에서 데이터를 주고받는 표준적인 방식으로 사용되며 RESTful한 디자인 원칙을 따른다.

프론트엔드 웹에서 서버에 데이터를 요청하거나 배달 앱에서 서버에 주문을 넣거나 등 이런 서비스등에서 오늘날 널리 사용되는 것이 REST란 형식의 API다.
(과거의 SOAP이란 복잡한 형식을 대체한것 - 이건 나중에 알아보기로..)

REST의 가장 중요한 형식은 각 요청이 어떤 동작이나 정보를 위한 것인지를 그 요청의 모습 자체로 추론이 가능하다는 것이다.
RESTful하게 만든 API는 요청을 보내는 주소만으로도 대략 이게 뭘 하는 요청인지 파악이 가능!

서버에 REST API로 요청을 보낼 때는 HTTP란 규약에 따라 신호를 전송한다.
우체국에서 뭘 부칠 때 일반우편, 등기, 택배 등 다양한 방식이 있듯이 이 HTTP로 요청을 보낼 때도 여러 메소드가 있다.
REST API에서는 get, post, delete, put, patch 를 사용함.

소포가 편지보다 더 많은걸 담을 수 있듯이 post, put, patch에는 body란 주머니가 있어서 정보들을 get이나 delete보다 많이, 그리고 비교적 안전하게 감춰서 실어보낼 수 있다.

GET

get은 read, 데이터를 조회하는 데 사용!

이런 uri에 get으로 보내는 요청이 있다면 개발자들은 아, 이반의 학생들을 보는 요청이구나. 하고 대번에 짐작할 수 있다.

POST

post는 create, 새로운 정보를 추가하는데 사용된다.

이 반에 새 학생이 들어와서 정보를 추가하려면 이렇게 uri를 짜고 post요청을 작성해서 body에 새 학생의 정보를 실어 보낸다.

학생의 인덱스는 보통 정보가 추가되면서 생성되기 때문에 post 요청에서는 명기할 필요가 없음!

그런데 이 인덱스를 가진 학생의 정보들이 변경됐다.

그럴 때는 uri에 변경할 학생의 인덱스까지 명기한 다음 put 또는 patch를 사용해서 변경, update될 새 정보들을 body에 실어 보낸다.

put과 patch의 사용은 쓰는 곳마다 다르고 그냥 put으로 다 하는 곳들도 있는데 알려진 정석은,

put은 정보를 통째로 갈아끼울 때!


patch는 정보 중 일부를 특정 방식으로 변경할 때 사용한다.

0개의 댓글