EndPoint와 API

어겐어갠·2022년 3월 24일
1

API

API (Application Programming Interface, 응용 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스를 제공한다. - 위키백과

서버와 클라이언트간 매개체이자 출입구.
모든 접속을 표준화하므로 트랜스와 같다고 생각한다.

REST API

REST(Representational State Transfer)는 로이 필딩(Roy Fielding)이 정의한 네트워크 소프트웨어 아키텍쳐(네트워크에서 통신을 구성할 때 이런 구조로 설계하라는 지침)다.
웹 API 쪽에서 굉장히 많이 쓰인다. 이를 'REST API'라고 부르는데...(중략)

  • Client-Server : 클라이언트와 서버로 분리되어야하며 서로 의존성이 없어야 한다.
  • Stateless(무상태성) : 상태 정보를 따로 저장하지 않으며, 결과가 항상 동일해야 한다. 따라서 REST API는 오픈될 수 밖에 없다.
  • Cache : 네트워크 프로토콜에서 제공하는 캐싱 기능을 적용할 수 있어야 한다.
  • Uniform Interface : 데이터가 표준 형식으로 전송될 수 있도록 구성 요소 간 통합 인터페이스를 사용한다. REST API 태반이 HTTP를 사용하기 때문에 URL과 응답 코드, Request-Response Method 등을 사용한다.
  • Layered System : API는 REST 조건을 만족하면 필연적으로 오픈될 수 밖에 없기 때문에, 요청된 정보를 검색하는데 있어 계층 구조로 분리되어야 한다.
  • Self-descriptiveness : API를 통해 전송되는 내용은 별도 문서 없이 쉽게 이해할 수 있도록 자체 표현 구조를 지녀야 한다. 마찬가지로 웹 표준인 JSON과 XML이 절찬리에 사용중이다.

EndPoint

An endpoint is simply one end of a communication channel.

여기서 end는 클라이언트를 가리키며 즉, pc나 노트북, 모바일폰 등의 클라이언트가 사용하는 도구를 뜻함.
api가 서버에서 자원에 접근할 수 있도록 하는 url

profile
음그래

0개의 댓글