
프로그램끼리 소통하는 방법이다. 즉, 프론트엔드(화면)와 백엔드(서버)가
서로 데이터를 주고받는 약속이라고 생각하면 이해하기 쉽다.
필자는 간단하게 국밥 키오스크로 예를 들었다.
김천국밥집 키오스크(프론트엔드)를 이용해서 국밥을 주문(요청)하면
주방(백엔드)에서 국밥을 만들어 응답(결과) 해준다.
| 단계 | 설명 | 실제 API 의미 |
| 국밥 하나 주세요! | 키오스크가 주방에 요청 | 👉 API 요청 (HTTP 요청) |
| 국밥 만들고 있어요~! | 주방에서 처리 즁 | 👉 서버에서 로직 처리 |
| 주문하신 국밥이요~! | 주방에서 국밥 전달 | 👉 API 응답 (JSON 데이터 등) |
| 항목 | 내용 |
| API 이름 | 회원가입 API |
| 요청 주소 | POST /users/signup |
| 요청 데이터 | { "username": "won2", "password": "1234" } |
| 응답 데이터 | { "message": "회원가입 성공" } |
이런 식으로 API 명세서를 작성하면:
처음엔 API가 너무 어려웠는데, 국밥 주문에 비유해보니까 생각보다 쉬웠다, 왜 이런 생각을 왜 못했을까 싶다…😅
API는 아래 키워드만 생각하자
API란?
프로그램끼리 통신하는 "데이터 주고받기 규칙"
API 명세란?
그 규칙을 미리 문서로 정리해놓은 것
왜 필요한가?
협업할 때 서로 헷갈리지 않고 정확히 연결하려고