본 포스팅 출처
https://blog.naver.com/ghdalswl77/222401162545
Application Programming Interface
서버와 통신하기 위해 만들어진 인터페이스
1. 서버와 데이터베이스 사이의 매개체
모든 사람들이 데이터베이스에 접근할수 없도록 허용된 유저에게만 접근 권한을 부여하여 서버와 데이터베이스 사이의 출입구 역할을 한다
2. 기기와 애플리케이션 사이의 매개체
애플리케이션(스마트폰 어플, 프로그램 등)과 기기가 데이터를 원활히 주고받을 수 있도록 돕는 역할을 한다.
3. 모든 접속을 표준화
기기 또는 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있다. 즉, 범용 플러그처럼 작동한다.
API가 서버에서 리소스에 접근할 수 있도록 하는 URL
웹 애플리케이션 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의된 명세
서비스 간의 요청과 응답을 위한 명세
우체국의 우편번호 API, 구글과 네이버의 지도 API 등 유용한 API 등
개발자가 따로 추가로 개발하지 않고 이런 오픈 API를 가져와 사용할 수 있다.
그리고 엔드포인트는 이런 서비스를 사용할 수 있도록 하는 서비스에서 제공하는 커뮤니케이션 채널의 한쪽 끝,
즉 요청을 받아 응답을 제공하는 서비스를 사용할 수 있는 지점
예를 들어 지하철 최단 거리 경로를 제공하는 웹 서비스가 있다고 하자.
이 서비스를 이용하는 사용자는 출발역과 도착역을 설정하고 최단 경로를 찾는 버튼을 누른다.
이 때 최단 거리 경로를 구하는 서비스를 이용하기 위한 요청이 향하는 URI가 바로 엔드포인트
웹 서비스는 유효한 형태로 엔드포인트에 요청이 전달되었을 경우 서비스 내부 로직을 실행하고 응답을 반환한다.
API는 두 시스템(어플리케이션)이 상호작용(소통) 할 수 있게 하는 프로토콜의 총 집합
ENDPOINT는 API가 서버에서 리소스에 접근할 수 있도록 가능하게 하는 URL
Client - EndPoint - API