2025. 3. 2. 16:29ㆍ개발공부/CS공부
API
API는 Application Programming Interface의 약자입니다. 단어를 하나씩 살펴보겠습니다. 애플리케이션은 고유한 기능을 가진 소프트웨어를 말합니다. 인터페이스는 두 애플리케이션 간의 일종의 서비스 계약입니다. 인터페이스에 따라 두 애플리케이션이 어떻게 통신할 것인지 정해집니다.
통신이란 요청과 응답을 하는 걸 의미합니다. 두 애플리케이션이 어떻게 요청과 응답을 할지를 기록한 게 API 문서입니다. API를 개발하는 걸 (당연하지만)API 개발이라고 부르고요. 만들어진 API를 통해 두 애플리케이션이 통신할 수 있도록 만드는 걸 API 연동이라고 말합니다.
엔드포인트는 컴퓨터 네트워크에 연결하고 컴퓨터 네트워크와 정보를 교환하는 물리적 디바이스입니다.
URI
URI는 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다. 웹 기술에서 사용하는 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스다.
URL
URL은 흔히 웹 주소라고도 하며, 컴퓨터 네트워크 상에서 리소스가 어디 있는지 알려주기 위한 규약이다. URI의 서브셋이다.

- Scheme: 리소스에 접근하는 데 사용할 프로토콜. 웹에서는 http 또는 https를 사용
- Host: 접근할 대상(서버)의 호스트 명
- Path: 접근할 대상(서버)의 경로에 대한 상세 정보
URI의 구조
일반 URI는 다음과 같은 형태를 나타낸다.
scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]
- scheme : 사용할 프로토콜을 뜻하며 웹에서는 http 또는 https를 사용
- user와 password : (서버에 있는) 데이터에 접근하기 위한 사용자의 이름과 비밀번호
- host와 port : 접근할 대상(서버)의 호스트명과 포트번호
- path : 접근할 대상(서버)의 경로에 대한 상세 정보
- query : 접근할 대상에 전달하는 추가적인 정보 (파라미터)
- fragment : 메인 리소스 내에 존재하는 서브 리소스에 접근할 때 이를 식별하기 위한 정보
API 엔드포인트가 인증을 시행하는 데에는 네 가지 주요 방법
- API 키: API 클라이언트는 키, 또는 그들과 API 서비스만 알고 있는 고유한 문자열을 할당받습니다. API 클라이언트가 API 호출을 서버 엔드포인트에 보낼 때, 호출이 어디에서 왔는지 서버가 알 수 있도록 키를 포함시킵니다.
- 기본 인증(사용자 이름 및 비밀번호): 키 접근과 마찬가지로 API 클라이언트는 API 서비스에 사용자 이름과 비밀번호를 설정하고 API 호출에 이러한 자격 증명을 포함합니다.
- OAuth 토큰: API 서버는 클라이언트의 인증을 요구하는 대신, OAuth 프로토콜을 사용하여 신뢰할 수 있는 인증 서버에서 인증 토큰을 받을 수 있습니다.
- mTLS(Mutual TLS): TLS는 웹페이지를 로드할 때 클라이언트와 서버 간에 인증된 연결을 생성하는 프로토콜입니다. 이는 또한 API 통합의 양쪽을 인증할 수 있습니다.

즉, API가 두 시스템(어플리케이션)이 상호작용할 수 있게 하는 프로토콜의 총집합이라면,
ENDPOINT는 API가 서버에서 리소스에 접근할 수 있도록 가능하게 하는 URL이라 할 수 있겠다.
출처 https://change-words.tistory.com/entry/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4-%EA%B0%9C%EB%B0%9C-API
출처 https://www.charlezz.com/?p=44767
출처 https://www.elancer.co.kr/blog/view?seq=74
출처 https://www.ibm.com/docs/ko/sva/9.0.7?topic=SSPREK_9.0.7/com.ibm.isam.doc/config/concept/OAuthEndpoints.html
'개발공부 > CS공부' 카테고리의 다른 글
NoSQL과 RDBMS (0) | 2025.03.16 |
---|---|
Spring MVC 패턴 (0) | 2024.10.27 |