티스토리 뷰

Project 댕린이집

API와 Endpoint

xoo | 수진 2024. 1. 31. 22:20

팀 프로젝트 때는 기능 명세서는 작성했었지만, API명세서는 작성해보지 않았습니다.

당시엔 굉장히 많은 것들을 이뤄냈고 경험했다고 생각했었는데 지나고나니 놓친 허점들이 정말 많다는 것을 느끼고 있습니다.

하지만 처음이니까요! 누구나 처음은 있으니까요.

 

그래서 이번 프로젝트에서는 API명세서도 직접 작성해보는 경험을 갖고자 합니다.

그 전에, API와 Endpoint를 정확히 짚고 넘어가려 합니다.

 

 


 

1️⃣ API 란?

 

먼저, API는 Application Programming Interface(애플리케이션 프로그램 인터페이스)의 줄임말입니다.

프로그램 혹은 시스템 간의 통신하는 창구라고 할 수 있겠습니다.

클라이언트와 서버 사이의 데이터 전송 통신을 위한 규칙이나 방법이라고 생각하면 편할 것 같습니다.

 

 


 

2️⃣ API의 종류

대표적으로 웹API와 라이브러리API가 있습니다.

 

✅ 웹 API 

  • 인터넷을 통해 다른 웹 서비스나 애플리케이션과 통신하기 위해 설계된 API로, 일반적으로 HTTP를 사용하여 데이터를 전송합니다.
  • RESTful API, SOAP API 등 다양한 형태가 있으며, 이러한 API를 사용하여 데이터를 검색, 업로드, 업데이트 그리고 삭제를 할 수 있습니다.
  • 보통 우리가 현재 코드를 작성하면서 만드는 API가 해당됩니다.

 

라이브러리 API 

  • 특정 프로그래밍 언어에서 사용되는 라이브러리나 프레임워크에서 제공되는 함수와 클래스 등을 사용하여 달느 소프트웨어 구성 요소와 상호 작용할 수 있도록 인터페이스를 제공합니다.
  • 이러한 API를 사용하여 다른 라이브러리나 프레임워크의 기능을 호출하거나 사용자 정의 함수와 클래스를 작성할 수 있습니다.

 


 

 

3️⃣ API 의 역할

  • 서버와 데이터베이스에 대한 출입구 역할을 합니다. 
    : 모든 사람들이 해당 데이터베이스에 접근하는 것을 방지하기 위해 사람들이 가진 서버와 데이터베이스에 대한 출입구 역할을 하며, 허용된 사람들이게만 접근성을 부여해줍니다.
  • 애플리케이션과 기기가 데이터를 원활하게 주고받을 수 있도록 합니다.
  • 모든 접속을 표준화 합니다.
    : 기계 / 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있도록 합니다.

 


 

 

4️⃣ API Endpoint 란?

애플리케이션이 API에 데이터 가져오기 request를 보낸다고 가정하면 request를 받는 지점이 필요합니다. 바로 이 요청/호출을 받은 디지털 노드/위치를 API Endpoint라고 합니다.

예를 들어,  A쇼핑몰에서 나에게 물건을 배송한다고 할 때, 내 주소를 정확히 기재해야 합니다. 무슨 아파트, 몇동, 몇호인지 잘 알려주어야 배달원이 배달을 할 수 있습니다.

이 예시에서 A쇼핑몰은 API 클라이언트, 나는 API 서버, 물건은 API 호출, 내 주소는 Endpoint 입니다.

 

 


 

 

 

API가 두 시스템(어플리케이션)이 상호작용 할 수 있게 하는 프로토콜의 총집합이라면,

Endpoint는 API가 서버에서 리소스에 접근할 수 있도록 가능하게 하는 URL 이라고 정리할 수 있겠습니다.

 

 


 

 

참고

https://blog.naver.com/ghdalswl77/222401162545

https://velog.io/@ilil1/API-%EC%99%80-EndPoint-%EB%9E%80

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함