API와 RESTful API 구조의 이해

저번 글과 관련지어서 오늘은 API에 관하여 글을 작성해보겠습니다 🙂

현대 소프트웨어 및 웹개발에서 데이터 교환의 핵심이 되는 API와 표준 architectural 스타일인 REST API에 대해 알아봅니다.

1. API(Application Programming Interface)란?

서로 다른 소프트웨어 시스템이 서로 소통할 수 있도록 연결해 주는 약속된 인터페이스입니다. 마치 식당에서 손님의 주문을 받아 주방에 전달하고 음식을 가져다주는 ‘점원’ 역할과 같습니다.

2. REST(Representational State Transfer)의 핵심 요소

REST는 네트워크 자원을 정의하고 다루는 가이드라인입니다. 다음 3가지로 구성됩니다.

  • 자원 (Resource) ➔ URI: 다루고자 하는 대상을 URI 형식으로 표현합니다.
    (예: /users, /posts/1)
  • 행위 (Verb) ➔ HTTP Method: 자원에 대해 수행할 작업을 지정합니다.
    • GET: 조회
    • POST: 생성
    • PUT / PATCH: 수정
    • DELETE: 삭제
  • 표현 (Representation): 데이터는 주로 JSON 형태의 표준 데이터 포맷으로 전달합니다.

3. RESTful API 설계의 좋은 예시

  • Bad: GET /getUserInfo?id=1 (행위를 URI에 포함하는 잘못된 설계)
  • Good: GET /users/1 (자원은 명사 형태로, 행위는 HTTP 메서드로 표현)

댓글 남기기