안녕하세요! 🦄
소소하지만 유익한 정보 ✨샤인테크✨ 입니다!
소프트웨어 개발을 하다보면 3rd Party 기능에 대해서는
직접 개발하지 않고 API 연동을 하는 경우가 많은데,
다양한 응용 프로그램과 연결해서
데이터를 연동하고 분석하는 API가 많이 활용됩니다.
#API연동 #API콜 #API인증키 #OpenAPI #API호출 등
빈법하게 사용되는 용어의 개념을 정리해보았다.
아래 목차로 시작합니다 :)
[ 목 차 ]
✔ API 연동 개념 및 사용하는 이유, 장점&단점
✔ OpenAPI 호출(콜), API 인증키, API 규격
✔ API Gateway 개념, HTTP API 또는 REST API
📍 API 연동 개념 및 사용하는 이유, 장점&단점
📌 API 연동
: 개발자가 새로운 애플리케이션 구성요소를 기존 아키텍처에 통합하는 방식을 간소화해 주는 API는 프로토콜 등을 정의하여 상호 작용을 하기 위한 인터페이스 사양을 의미한다
◾ function, method, operation 등으로 다양하게 불리는 '소프트웨어 컴포넌트'의 기능 및 입출력
→ cmd/터미널에서 Hello, world!라는 문자열을 출력하는 프로그램을 C언어로 작성할 때도 텍스트로 출력하는 printf API를 사용하여 작성하는 것
◾ 사양(specifiaction)만 정의하기 때문에 구현(implementation)과는 독립적
→ SDK(Software Development Kit) : API가 실제 기능 구현체인 라이브러리와 함께 제공되는 것
◾ 플러그인 형태로 설계된 API가 적용되면, 이미 작성되어 컴파일이 되고 완성된 프로그램에 수정없이 프로그램 기능을 추가하는 것이 가능
→ 구글, 네이버, 카카오 등의 IT회사에서는 사내 제품군들의 API를 제공하여 개발 편의를 돕고, 자사 제품을 쓰도록 유도함
📌 API 장점
◾ 비즈니스적 관점에서는 새로운 수익 채널 확보 및 기존 수익 채널 확장
◾ 비용 및 시간을 줄일 수 있음
📌 API 단점
◾ 정보 부족 및 정확성이 낮을 수 있고, 확장성이 낮을 수도 있음
◾ API 손상, 노출, 해킹시 데이터 유출 사고의 원인이 되므로 API 보안이 중요함
→ 신뢰할 수 있는 Identity에 할당된 토큰 사용 / 암호화 및 서명 사용 / 취약점을 확용하고 할당량 및 제한을 둠 / API 게이트웨이를 통한 트래픽 분석과 API 사용 방식 제어 및 분석 가능
📍 OpenAPI 호출(콜), API 인증키, API 규격
📌 API 릴리스 정책
① Private
: API를 내부에서만 사용할 수 있도록 함.
② Partner
: API를 특정 비즈니스 파트너와 공유하며, 품질 저하 없이 추가 수익원 창출 가능
③ Public (=OpenAPI)
: 모두에게 공개되는 OpenAPI는 제 3자가 API와 상호 작용하는 애플리케이션을 개발 가능
ex) 네이버 아이디 로그인, 네이버 캘린더, 네이버 지도 등
📌 API 인증키, API 규격
◾ API 인증키 : 인증된 사용자임을 나타내는 문자열로, API key가 있어야 계정의 권한을 실행할 수 있음
◾ API 규격 : 사용자로부터 요청(Request)을 하면, 결과값을 받아 Parsing
- 요청 방법 : REST, SOAP, XML-RPC 등의 형식
◾ WEB API : 웹 서버 또는 웹 브라우저를 위한 애플리케이션 프로그래밍 인터페이스로, HTTP 서비스이고 WEB 환경을 통해 제공되는 데이터 CRUD 인터페이스를 제공함
📍 API Gateway 개념
◾ API Gateway : API를 생성, 구성 및 배포
→ API 개발자는 API를 생성하고 배포하여 API Gateway에서 필요한 기능이 구현되도록 함 & 앱 개발자는 API Gateway에서 API 개발자가 생성한 WebSocet 또는 REST (Representational State Transfer) API를 호출
cf. REST API : 자원을 URI로 표시하고, HTTP Method를 이용하여 해당 자원을 받아주면 그 결과를 받음
* 참고) https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/api-gateway-basic-concept.html
이 게시글이 도움이 되었다면 좋겠습니다 :)
🦄 소소하지만 유익한 정보 ✨샤인테크✨ 컨텐츠가 유익했다면
공감 & 구독하기 부탁드립니다~~
(글 하단 '구독하기' 버튼 or 블로그 우측 상단 '✨IT x 재테크 소유일기' 버튼)
💻IT x 💰재테크 관련 '궁금했던 내용' / '정리해줬으면 좋겠는 내용'이 있다면
자유롭게 댓글로 달아주세요 :)
더 유익한 글로 돌아오겠습니다 👀
또 만나요 🐾