API란?
API(Application Programming Interface)는 둘 이상의 컴퓨터 프로그램이 통신하는 방법이자, 컴퓨터 사이에 존재하는 중계 계층을 의미한다.
중계 계층인 이유?
프로그램이 서로 데이터를 주고 받을 때 중간에 위치하는 것이 바로 API이기 때문이다.
Interface?
인터페이스는 서로 다른 시스템, 장치 사이에서 정보나 신호 등이 오갈 때의 접점이나 경계를 의미한다. 이를 통해 내부 시스템의 설계 구조 등은 알 필요없이 통신이 가능하다. API 역시 데이터 베이스 설계가 어떻게 되었는 지는 상관없이 데이터를 교환할 수 있다.
API의 장점
1. 제공자는 서비스의 중요한 부분을 드러내지 않을 수 있다. 내부 시스템의 설계 구조나 데이터 베이스 테이블 등 드러내고 싶지 않은 정보는 드러내지 않고 필요한 데이터만 제공할 수 있다.
2. 사용자 역시 내부 시스템의 설계 구조 등은 알 필요없이 필요한 데이터만 제공받을 수 있다.
3. Open API의 경우 앱 개발 프로세스를 단순화 할 수 있다.
4. 내부 프로세스가 수정되었을 때, API는 매번 업데이트 되지 않도록 할 수 있다. -> 사용자의 업데이트 빈도를 줄일 수 있음
5. API를 통해 제공자는 필요한 데이터를 한 곳에 수집할 수 있다 -> ex) yes24 베스트셀러
API의 종류
Private
내부적으로 사용한다. 주로 해시키를 하드코딩하여 서버와 서버 사이에서 통신을 할 때 사용한다.
Public
많은 사용자들이 사용할 수 있다. 많은 트래픽을 방지하기 위해 하루 요청 수 또는 계정 당 횟수를 제한한다. ex) naver api
'CS' 카테고리의 다른 글
데이터 교환 형식 - JSON과 XML (0) | 2023.06.20 |
---|---|
Token과 JWT (2) | 2023.02.27 |
Token과 Session (0) | 2023.02.27 |