샤인테크 소유일기

소유일기 : 소소하지만 유익한 일상 기록

Connecting the Dots 🎈

✨ Tech 1. IT

[잇잇 E.01] API(Application Programming Interface) | API 연동 개념 및 사용하는 이유, 장점&단점 / OpenAPI 호출(콜), API 인증키, API 규격 / API Gateway 개념

shine.may 2021. 9. 23. 11:30

안녕하세요! 🦄 

소소하지만 유익한 정보 ✨샤인테크✨ 입니다!

 

소프트웨어 개발을 하다보면 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와 상호 작용하는 애플리케이션을 개발 가능

  → 카카오 API / 네이버 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 💰재테크  관련 '궁금했던 내용' / '정리해줬으면 좋겠는 내용'이 있다면

자유롭게 댓글로 달아주세요 :)

 

더 유익한 글로 돌아오겠습니다 👀

또 만나요 🐾