API 그리고 Endpoint

이정은·2022년 11월 14일
1
post-thumbnail

Microsoft 문서를 읽는데 endpoint라는데 그게 뭔지 몰라 찾아보았다.
근데 api랑 매번 같이 설명을 해주길래 같이 정리 !

API (Application Programming Interface)

API가 무엇인가?

api라는 맥락에서 Application은 고유한 기능을 가진 모든 소프트웨어를 나타낸다.
Interface는 두 application 간의 서비스 계약이라고 할 수 있는데, 이 계약은 요청과 응답을 사용하여 두 Application이 통신하는 방법을 말한다.

API는 어떻게 작동하는가?

보통 clien와 server 측면으로 설명하는데 요청을 보내는 application을 client, 응답을 보내는 application을 server라고 한다.

API가 생성된 시기와 이유에 따라 네가지 방식이 있다.

  • SOAP API
    과거에 많이 사용했던 API로 단순 객체 프로토콜을 사용하며, 클라이언트와 서버는 XML을 사용하여 메세지를 교환한다

  • RPC API
    원격 프로시저 호출이라고 하는데, 클라이언트가 서버에서 함수나 프로시저를 완료하면 서버가 출력을 클라이언트로 다시 전송한다

사실 위 두개는 별로 들어본 적이 없다. 밑에 두개는 많이 들어봤을 것이다

  • Websocket API
    JSON 객체를 사용하여 데이터를 전달하는 최신 웹 API로 클라이언트앱과 서버 간의 양방향 통신을 지원한다. 서버가 연결된 클라이언트에 콜백 메세지를 전송할 수 있어 REST API보다 효율적이다.

  • REST API
    가장 많이 사용되고 있는 API로 클라이언트가 서버에 요청을 데이터로 전송한다. 서버가 이 클라이언트 입력을 사용하여 내부 함수를 시작하고 출력 데이터를 다시 클라이언트에 반환한다.

Endpoint

그래서 endpoint가 뭔데?

api는 한마디로 클라이언트으로부터 요청을 받고 서버로부터 요청에 대한 응답을 전송하는 것이라고 할 수 있다.
여기서 endpoint는 요청을 받아 응답을 제공하는 서비스를 사용할 수 있는 지점을 의미한다

예를 들어 영화 평가를 제공하는 웹서비스가 있다고 할 때, 사용자는 원하는 영화를 검색해 볼 것이다.
이 때 해당 영화에 대한 평가를 이용하기 위한 요청이 향하는 URL이 endpoint 이다.

Reference list

https://aws.amazon.com/ko/what-is/api/
https://blog.hubspot.com/website/api-endpoint
https://blog.naver.com/ghdalswl77/222401162545

profile
성장하는 개발자_💻

0개의 댓글