API와 Endpoint

jyleever·2022년 9월 12일
0

기술

목록 보기
1/2

본 포스팅 출처
https://blog.naver.com/ghdalswl77/222401162545

API

Application Programming Interface

서버와 통신하기 위해 만들어진 인터페이스

  • 응용 프로그램 프로그래밍 인터페이스
  • 두 시스템이 상호작용할 수 있게 하는 프로토콜의 총 집합
    (프로그램들이 서로 상호작용할 수 있도록 도와주는 매개체)
  • 작은 단위로 응용프로그램에서 사용할 수 있도록 OS나 프로그래밍 언어가 제공하는 기능을 사용/제어할 수 있게 하는 인터페이스 (java의 stream api)

API 역할

1. 서버와 데이터베이스 사이의 매개체
모든 사람들이 데이터베이스에 접근할수 없도록 허용된 유저에게만 접근 권한을 부여하여 서버와 데이터베이스 사이의 출입구 역할을 한다

2. 기기와 애플리케이션 사이의 매개체
애플리케이션(스마트폰 어플, 프로그램 등)과 기기가 데이터를 원활히 주고받을 수 있도록 돕는 역할을 한다.

3. 모든 접속을 표준화
기기 또는 운영체제 등과 상관없이 누구나 동일한 액세스를 얻을 수 있다. 즉, 범용 플러그처럼 작동한다.

Endpoint

API가 서버에서 리소스에 접근할 수 있도록 하는 URL

WEB API

웹 애플리케이션 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의된 명세
서비스 간의 요청과 응답을 위한 명세

우체국의 우편번호 API, 구글과 네이버의 지도 API 등 유용한 API 등
개발자가 따로 추가로 개발하지 않고 이런 오픈 API를 가져와 사용할 수 있다.

그리고 엔드포인트는 이런 서비스를 사용할 수 있도록 하는 서비스에서 제공하는 커뮤니케이션 채널의 한쪽 끝,
요청을 받아 응답을 제공하는 서비스를 사용할 수 있는 지점

예를 들어 지하철 최단 거리 경로를 제공하는 웹 서비스가 있다고 하자.
이 서비스를 이용하는 사용자는 출발역과 도착역을 설정하고 최단 경로를 찾는 버튼을 누른다.
이 때 최단 거리 경로를 구하는 서비스를 이용하기 위한 요청이 향하는 URI가 바로 엔드포인트

웹 서비스는 유효한 형태로 엔드포인트에 요청이 전달되었을 경우 서비스 내부 로직을 실행하고 응답을 반환한다.

API와 Endpoint

API는 두 시스템(어플리케이션)이 상호작용(소통) 할 수 있게 하는 프로토콜의 총 집합
ENDPOINT는 API가 서버에서 리소스에 접근할 수 있도록 가능하게 하는 URL

Client - EndPoint - API

0개의 댓글