1. API
API (Application Programming Interface)
- 애플리케이션과 다른 서비스(혹은 애플리케이션) 간에 데이터나 기능을 교환할 수 있도록 설계된 인터페이스
- 두 소프트웨어가 서로 상호 작용할 수 있도록 도와주는 중간 다리 역할
사용 사례
- 외부 데이터 연동: Google Maps API를 사용해 내 앱에 지도를 삽입
- 결제 처리: Stripe나 PayPal API를 사용해 결제 기능 구현
- 인증 및 로그인: OAuth를 활용한 Google, Facebook 로그인
- 자동화: 여러 소프트웨어를 연결해 업무 프로세스 자동화
- 확장성 확보: 외부 서비스와 통합하여 애플리케이션 기능 확장
2. API 사용 방법
API 사용의 기본 단계
- API 문서 읽기: 제공되는 endpoint, 메서드(GET, POST 등), 파라미터를 이해
- 키 발급: API 사용을 위해 인증 키(API Key)가 필요
- request 제작:
- HTTP 메서드 사용 (GET, POST, PUT, DELETE 등)
- 필요한 헤더(header) 및 파라미터를 구성
- response 처리:
- 오류 처리: 서버로부터 받은 오류 코드(404, 500 등)를 기반으로 로직 작성
API의 주요 기술
- REST API
- HTTP 기반으로 작동하는 가장 흔한 API 형식.
- RESTful의 특징:
- 클라이언트-서버 구조
- stateless
- 계층적 시스템
- HTTP 메서드:
- GET: 데이터 조회.
- POST: 데이터 생성.
- PUT: 데이터 수정.
- DELETE: 데이터 삭제.
- SOAP API
- XML을 사용하여 메시지를 주고받는 프로토콜
- 보안이 중요한 금융 서비스에서 많이 사용
- GraphQL
- 데이터를 요청할 때 필요한 부분만 가져오는 API 형식
- REST보다 유연성이 높음
- WebSocket
- OAuth
3. API 사용의 장단점
장점
- 모듈화: 외부 서비스를 쉽게 통합
- 효율성: 기존 기능을 재 사용하여 개발 시간 단축
- 확장성: 새로운 기능을 추가하기 쉬움
단점
- 의존성: 외부 API가 다운되면 서비스에 영향
- 보안: API 키 관리 및 데이터 보호 필요
- 비용: 일부 API는 사용량에 따라 비용이 발생