티스토리 뷰

1. API 란?

웹 개발을 하다보면 가장 많이 듣는 용어 중 하나가 API일 것이다. 그래서 API가 뭐냐? 라고 물으면, 어디서부터 설명해야할까 고민에 쌓이게 된다.

 

API(application programming interface 애플리케이션 프로그래밍 인터페이스, 응용 프로그램 프로그래밍 인터페이스)는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의 소프트웨어 인터페이스이며 다른 종류의 소프트웨어에 서비스를 제공한다.

출처 : 위키백과

 

위키 백과에서 가져온 글만 봐서는 무슨 말인지 와닿지 않는다.

 

그래서 내가 남들에게 설명할 때는

원하는 정보를 서버나 프로그램에 요청하기 위한 입력 정보 작성 규칙

 

이라고 한줄로 설명한다. 포괄적인 의미를 담고 있기 때문에 한줄 요약이 틀릴 수 있지만, 개인적으론 의미전달 용으로 잘 줄였다 생각한다.

 

2. API의 구성 요소

API는 대표적으로 엔드포인트, 매서드, 요청 및 응답으로 구성된다.

1. EndPoint
2. Methods
3. Request and Response

 

네이버 웹툰 전독시 페이지에 진입하는 API이다. 짧은 한줄이지만 위 정보들을 내포하고 있다.

https://comic.naver.com/webtoon/list?titleId=747269&weekday=wed

 

1. EndPoint(엔드포인트) /webtoon/list 이 부분을 말한다.

2. Methods는 요청 방식을 의미하는데, 요청 URL의 구성을 보면 GET 방식임을 알 수 있다. 이 GET 방식이 API의 구성요소 중 하나인 Method 다.

3. Request와 Response는 header와 body 등의 서버나 프로그램이 주고받는 모든 데이터(JSON/XML 등)를 말한다.

Request 정보는 요청 URL에서 일부 확인할 수 있다. GET 방식의 body는 ? 뒤에 나오는 정보들이므로 titleId와 weekday를 알 수 있으며, 헤더 정보는 브라우저에서 보내고 있으니, 개발자 도구 등에서 확인할 수 있다.

 

Response는 페이지 정보가 될 것이다.

 

3. 한가지 더

사실 API는 구현 방식보다는 규칙 혹은 개념에 가까운 용어라고 생각한다. 때문에 일반적으로 쓰이는 HTTP/HTTPS 엔드포인트 외에도 시스템 또는 응용 프로그램과 상호 작용하는 데 사용하는 기능 또는 메서드 집합을 지칭할 때도 있다.

 

이러한 의미에서 라이브러리의 매서드 또는 함수 집합은 해당 라이브러리와 상호 작용하기 위한 API로 간주될 수 있다. 위와 같은 용어로 사용하는 것도 틀린 의미는 아니니 참고 했으면 좋겠다.

 

4. 마치며

API가 뭐에요? 라고 묻는 친구가 있었는데 이 때 한번에 답을 하지 못했었다.

 

막연하게 알고 있던 개념을 깔끔하게 정리하고 간 느낌이라 홀가분하다. REST API 같은 것도 짚고 넘어가면 좋겠지만, REST API는 따로 정리된 내용도 많고, 개인적으론 재미없고 지겨운 내용이라 추가적으로 다루지는 않을 것 같다.


공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함