REST API

YES31·2023년 2월 21일
0

WIL

목록 보기
10/11

API

응용프로그램이나 서비스를 개발하는데 필요한 운영체제(OS)나 라이브러리 등의 특정 기능을 추상화하여 사용하기 쉽도록 만든 인터페이스

클라이언트(프론트엔드)와 서버(백엔드)는 직접적으로 호출하기 보다는 주로 Application Programming Interface (API)라 불리는 중간자 역할의 인터페이스를 사용한다.

API는 클라이언트와 서버간의 통신에 중요한 역할을 하므로, 작성에 신중해야 한다. 그래야 유지보수를 하기 쉽고, 사용성이 좋아지고, 오류가 없다.


REST API

REST는 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식이다. 자원을 이름(자원의 표현)으로 구분하여 해당 자원의 상태(정보)를 주고 받는 모든 것을 의미한다.

쉽게 말하면 API를 구축할때 URI와 HTTP Method를 활용하여 API의 기능을 추축 가능하도록 아키텍쳐를 구성하는 원칙과 같다. delete면 삭제 get이면 정보를 얻어올 때 사용하는 것처럼 말이다. Method만을 보고 어떤 기능인지 알아야 "아! 이 API는 RESTful 하네" 라고 말할 수 있다.

디자인 규칙

  1. URI는 동사보다는 명사를, 대문자보다는 소문자를 사용한다.
❌ : https://velog.io/@mococo31/putShit
⭕️ : https://velog.io/@mococo31/shit
  1. 마지막에 슬래시(/)를 포함하지 않는다.
❌ : https://velog.io/@mococo31/putShit/
⭕️ : https://velog.io/@mococo31/putShit
  1. 언더바(_)대신 대시(-)를 사용한다.
❌ : https://velog.io/@mococo31/moco_coro_co
⭕️ : https://velog.io/@mococo31/moco-coro-co
  1. 행위를 포함하지 않는다.
❌ : https://velog.io/@mococo31/get-mococo/765
⭕️ : https://velog.io/@mococo31/mococo/765
  1. 파일확장자는 URI에 포함하지 않는다.
❌ : https://velog.io/@mococo31/mococo.jpg
⭕️ : https://velog.io/@mococo31/mococo
profile
🏀 주니어 개발자

0개의 댓글