JongTachi의 개발 블로그

API 정의, 특징, 종류 본문

IT_Tools

API 정의, 특징, 종류

JongTachi 2022. 8. 8. 20:08
728x90
반응형

1. what is API?

사전적 정의:  API란 애플리케이션 SW를 빌드하고 통합하기 위한 정의 및 프로토콜 세트인 애플리케이션 프로그래밍 인터페이스(Application Programming Interface)를 의미한다.

 

API는 간단하게 키보드 같은 거라고 생각하면 된다. 우리는 키보드를 통해 컴퓨터와 대화한다(글을 작성하고 enter를 누르면 컴퓨터가 인식하여 스크린에서 텍스트로 볼 수 있는 것처럼) 이와 마찬가지로 프로그램들이 서로 소통하는 방법을 API라고 한다. 즉 코드끼리 서로 소통하기 위해 만들어진게 API라고 생각하면 된다. 

 

위에 정의가 이해가 안 간다 싶으면 그냥 한 프로그램에서 다른 프로그램으로 데이터를 주고 받기 위한 방법(코드)이라 생각하면 된다.  

 

2. API 특징

1) 가끔은 API 사용에 제약(1초에 10리퀘스트만 보내기 등등)이 있거나, 사용하기 위해서 지불해야할 때도 있다.

2) API를 통한 혁신 : 파트너 또느느 일반 사용자에게 API를 공개하면 다음과 같은 이점을 얻을 수 있다.

  • 새로운 수익 채널을 확보하거나 기존 수익 채널을 확장한다.
  • 브랜드 인지도를 확대한다.
  • 외부 개발을 활용하고 협업을 수행하여 오픈 혁신을 촉진하거나 효율성을 높인다.

3. API 종류

1) Web API: 브라우저를 위해 만든 API를 의미.

2) 카메라 접근권한 요청

3) 유저의 지역위치 접근 권한 요청

4) 공공API, , 날씨 API, 인스타그램 API, 페이스북 API 등등 

 

4. API가 가져야할 내용

1) 요청방식(method) : 데이터를 달라고 할 건지 혹은 데이터를 보낼 것인지 정한다.

2) 무슨 자료를 요청할지(endpoint) : 어떤 데이터를 요청할 것 인지 제시한다.

3) 자료요청에 필요한 추가정보 : 내 아이디, 이름 등

+ 웹의 경우 REST API라는 원칙에 따라 작성하면 좋다. 

5. public / private / partner API

1) public API : 누구나 사용가능한 공개 API

2) private API : 사내에서 몰래쓰는 API

3) partner API : 미리 정해둔 놈만 쓰는 API  

728x90
반응형

'IT_Tools' 카테고리의 다른 글

SVN이란?  (0) 2023.02.10
파싱(Parsing)이란? (파싱, 토큰, 파스트리)  (0) 2022.11.02
VPN이란?  (0) 2022.10.21
AWS란? (클라우드 개념 포함)  (1) 2022.09.29
정적(static), 동적(dynamic)이란? (Computer, Network)  (0) 2022.07.19