상세 컨텐츠

본문 제목

API 구조 정확하게 알아봅시다 2편

IT 정보 알아보기

by 런칭박스 2023. 2. 27. 18:02

본문

 

이 전 시간 API에 관련하여 3편에 이어서

안내드리겠다고 말씀드렸는데요, 이번엔

저번 시간에 이어서 API 구조에 관련해

소개해 드리는 시간을 가져보도록 하겠습니다.

 

그전에, API에 대해서 짧게 복습하고 넘어갈게요.

API데이터를 공유하고 서비스를 제공하기 위한

소프트웨어 인터페이스를 의미하며, 다양한 종류들이

있는데 이는 이전 포스팅을 참고하시기 바랍니다.

 

 

● API 종류 알아보기 ●

 

API 종류 자세하게 알아봅시다 1편

개발 회사에 근무하고 계신다거나 혹은 개발 프로젝트를 진행 중, 진행 예정인 분들께서는 "API"라는 용어를 들어보셨을 텐데요, 오늘은 API에 대해서 알아보는 시간을 가져보도록 할 테니 관련하

launching-box.tistory.com

 

API를 활용할 경우 정보 수집이나

인터페이스 구축 시 발생하는 시간을

크게 단축시킬 수 있다는 장점이 있어

개발에 있어 매우 효율적이기 때문에

많은 개발자분들이 다양한 분야에서

활발하게 활용하고 계십니다.​

 

 

 

 

API 구조 알아보기

출처 : Daniel Leskosky

 

보편적인 API의 구조를 알아보자면,

1. 엔드 포인트.

ㄴ API가 위치한 서버의 특정 URL 주소.

ㄴ 요청된 데이터나 서비스를 반환하는 역할.

2. 메소드.

ㄴ API가 지원하는 HTTP 메소드

ㄴ 각 메소드는 특정한 작업을 수행하도록 설계.

ㄴ 예) GET, POST, PUT 등

3. 매개변수.

ㄴ API 요청에서 사용되는 입력 값을 의미.

ㄴ 메소드 및 엔드 포인트에 따라 다양한 종류와 갯수가 있음.

4. 헤더.

ㄴ API 요청에 대한 부가적인 정보를 포함하는 데이터 구조.

ㄴ 예) 사용자 인증, 캐시 제어, 언어 등

5. 응답.

ㄴ API 요청에 대한 결과를 포함하는 데이터 구조.

6. 오류 처리.

ㄴ API 요청 중 발생할 수 있는 오류에 대한 처리 방법 정의.

ㄴ 오류 코드와 오류 메시지를 포함.

이런 구조를 가지고 있다는 것을 알 수 있습니다.

 

API 구조를 아주 쉽고

간단하게 말씀드리자면

우리와 API의 상호작용 = 요청

상호작용의 결과물 = 응답

이렇게 이루어져 있다고 할 수 있습니다.

 

일반적으로 API를 사용하여 데이터에 액세스하거나

작업을 수행해야 하는 경우 [사용자 인증]을 통해서

보안을 유지하고 데이터의 무단 액세스를 방지할 수

있기 때문에 사용자 인증은 API를 호출하는 앱과

서버 간의 토큰 교환 등을 통해 수행될 수 있습니다.

 

그러니 API 제공 업체가 제공하는

인증 방식을 반드시 준수해야 하며,

API를 제공하는 업체는 보안과 관련된

적절한 인증 방식을 제공하는 것이 좋습니다.

 

 

 

 

API의 장점 알아보기

출처 : AppMaster

 

1편부터 지금까지 API는 수고를 덜어주기 위해

활용하는 것이라고 안내드리고 있는데, 이 부분을

조금 더 쉽게 이해할 수 있는 방법에 무엇이

있을까 고민하다가 한 가지 예시를 떠올렸어요.

 

지금부터 여러분들이 의류 디자이너라고

가정해 보도록 하겠습니다. 떠오른 스케치가

있다면 필요한 원단부터 실의 컬러, 필요한

도구들까지 전부 리스트업 해서 하나씩

구하려고 하실 겁니다. 그 이유는,

제작하는데 필요하기 때문이죠.

 

그런데 여러분, 옷을 제작할 때

원단부터 만드시나요? 가위를 만드시나요?

그렇지 않습니다. 만들어져 있는 원단과 가위,

실 등을 가져와서 "옷"을 만드는 거죠.

*API는 원단, 가위, 실 등을 의미한다

생각하시면 이해가 쉽습니다.

우리는 API의 도움을 받아서 시간 낭비를

줄여가면서 옷을 만들 수 있는 거죠.

 

이 예시를 그대로 개발 프로젝트에 대입하면,

타사에서 제공하는 API를 우리의 서비스 구현에

활용하여 개발 시간을 단축하고 인력 낭비를

최소화하여 프로젝트 진행을 할 수 있죠.

 

게다가 오픈 API를 활용하게 된다면

비용 없이 사용도 가능하니 비용 절감에도

큰 도움을 받아보실 수 있습니다. 만약,

유료 API를 활용한다고 하더라도 

당연히 직접 만드는 것보다 훨씬

적은 비용을 활용하는 방향이죠.

 

즉, API를 활용하면

효율적인 개발 진행이 가능하고

이것이 바로 API를 활용하는 이유입니다.

 

 

 

API 실전활용

자, 그럼 이렇게나 효율적으로 활용할 수 있는

API는 실전에서 어떻게 활용할 수 있을까요?

몇 가지 예시로 안내드리겠습니다.

 

 

1. 데이터 수집.

 

만약 여러분들이 날씨 예측 서비스를

구현하길 희망하신다면 기상청에서

제공하는 공공 API를 사용해 날씨 데이터를

가져와 서비스에 표시할 수 있습니다.

API를 사용해서 다른 서비스의 데이터를

수집하고 분석하는 것이 가능한 것이죠.

 

 

2. 서비스 통합.

 

다른 서비스를 통합하는 것 역시 API를

활용하면 가능한데요, 예를 들어서

페이스북의 로그인 API를 활용하면

우리 서비스에서 페이스북을

활용한 로그인이 가능합니다.

 

 

3. 자동화.

 

API를 사용해 프로세스 자체를 자동화 시켜

불필요한 액션을 덜어낼 수도 있는데요,

예를 들어서 슬랙 API를 활용하신다면

일부 업무는 자동화하고, 챗봇을

제작하여 활용할 수 있게 되는 거죠.

 

 

4. 기계 학습.

 

API를 활용하면 머신러닝 모델 학습이 가능하고

사용 역시 가능하기 때문에 예를 들어서,

구글 클라우드 비전 API를 사용할 경우

이미지 분류 모델을 학습시켜 이미지에서

개체 인식이 가능하도록 할 수 있습니다.

 

 

안내드린 내용들 외에도 무수히 많은

API들이 존재하기 때문에 다양하게

활용한다면 굉장히 많고 다양한

서비스를 제작해낼 수 있게 됩니다.

 

 


1 ~ 2 편에 이어서 API가 무엇이고,

어떤 종류가 있으며 어떤 장점이 있는지,

구조는 어떻게 구성되어 있는지에 대해서

알아보는 시간을 가져보았는데요,

다음 시간에는 API 구조와 더불어

오픈 API 예시를 비교하며 더욱 쉽게

이해해 보는 시간을 가져보도록 하겠습니다.

 

매일 유익한 IT 정보를 전달드리는 제시요

▶ 개발 니즈 맞춤형 개발사 매칭.

▶ 디테일한 기획서 작성을 돕는 컨설팅 제공.

▶ 소통을 돕는 개발 모니터링 서비스 제공.

기존 IT 아웃소싱 프로세스에 제시요만의

특별함을 더해 리스크를 최소화하여

신뢰를 기반으로 아웃소싱 진행이 가능하도록

했으니 관련하여 제시요의 도움이 필요하시면

언제든지 편하게 상담 신청 부탁드립니다.

 

관련글 더보기

댓글 영역