본문 바로가기

松泉, 인생글, 바라보기

바라보기, 찾기, webhook, 웹훅

반응형

바라보기, 찾기, webhook, 웹훅
 
웹훅(webhook)은 웹 개발에서 사용자 정의 콜백을 사용하여 웹 페이지 또는 웹 애플리케이션의 동작을 강화하거나 변경하는 방법이다. 이러한 콜백은 원래 웹사이트나 애플리케이션과 반드시 관련이 없을 수도 있는 제3자 사용자 및 개발자에 의해 유지, 수정 및 관리될 수 있다. "웹훅"이라는 용어는 2007년 제프 린제이(Jeff Lindsay)가 컴퓨터 프로그래밍 용어인 (hook)에서 유래시킨 것이다.
포맷은 일반적으로 JSON이다. 요청은 HTTP POST 요청으로 수행된다.
웹훅는 "사용자 정의 HTTP 콜백"이다. 일반적으로 저장소에 코드 푸시, 블로그에 댓글 게시 등 다양한 사용 사례와 같은 일부 이벤트에 의해 트리거된다. 해당 이벤트가 발생하면 원본 사이트는 웹훅에 대해 구성된 URL에 HTTP 요청을 보낸다. 사용자는 한 사이트의 이벤트가 다른 사이트의 동작을 호출하도록 구성할 수 있다.
일반적인 용도는 지속적인 통합 시스템으로 빌드를 트리거하거나 버그 추적 시스템에 알리는 것이다. 웹훅은 HTTP를 사용하기 때문에 새로운 인프라를 추가하지 않고도 웹 서비스에 통합될 수 있다.
 
 


API(application programming interface 애플리케이션 프로그래밍 인터페이스[*], 응용 프로그램 프로그래밍 인터페이스)는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의 소프트웨어 인터페이스이며 다른 종류의 소프트웨어에 서비스를 제공한다.[1] 이러한 연결이나 인터페이스를 빌드하거나 사용하는 방법을 기술하는 문서나 표준은 API 규격(사양)으로 부른다. 이 표준을 충족하는 컴퓨터 시스템은 API가 구현(implement)되었다거나 노출(expose)되었다고 말한다. API라는 용어는 사양이나 구현체를 의미할 수 있다.
컴퓨터와 인간을 연결시키는 사용자 인터페이스와 반대로, API는 컴퓨터나 소프트웨어를 서로 연결한다. 직접 사람(최종 사용자)에 의해 사용되도록 고안된 것이 아니며, 대신 소프트웨어에 이를 통합하고자 하는 컴퓨터 프로그래머가 사용하도록 고안되었다. API는 각기 다른 부분으로 구성되기도 하며 프로그래머가 사용할 수 있는 도구나 서비스의 역할을 한다. 이러한 부분들 중 하나를 사용하는 프로그램이나 프로그래머는 API의 해당 부분을 호출(call)한다고 말한다. API를 구성하는 호출들은 서브루틴, 메소드(method), 요청, 통신 엔드포인트라고도 부른다. API 규격은 이 호출들을 정의하며, 다시 말해 이들을 어떻게 사용하거나 구현하는지를 설명한다.
API의 한 가지 목적은 시스템이 동작하는 방식에 관한 내부의 세세한 부분을 숨기는 것으로, 내부의 세세한 부분이 나중에 변경되더라도 프로그래머가 유용하게 사용할 수 있고 일정하게 관리할 수 있는 부분들만 노출시킨다. API는 특정 시스템용으로 커스텀하게 빌드될 수도 있고, 아니면 수많은 시스템 간 상호운용성을 허용하는, 공유가 되는 표준일 수도 있다.
API라는 용어는 웹 API를 의미하기도 하며,[2] 이는 인터넷에 의해 병합된 컴퓨터들 간 통신을 허용한다. 프로그래밍 언어소프트웨어 라이브러리, 컴퓨터 운영 체제컴퓨터 하드웨어를 위한 API도 존재한다. API는 1940년대에 기원하였으나 이 용어는 1960년대, 70년대 들어서야 모습을 드러냈다.
 
API는 응용 프로그램 이진 인터페이스(ABI)와는 구별한다. API는 소스 코드 기반인 반면 ABI는 이진 인터페이스이다. 이를테면 POSIX는 API인 반면, 리눅스 기본 규격은 ABI를 제공한다-위키백과
 
웹 API는 웹 애플리케이션 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의된 명세를 일컫는다. 예를 들어 블로그 API를 이용하면 블로그에 접속하지 않고도 다른 방법으로 글을 올릴 수 있다. 그 외에 우체국의 우편번호 API, 구글과 네이버의 지도 API등 유용한 API들이 많으므로, 요즘은 홈페이지 구축이나 추가개편 시 따로 추가로 개발하지 않고 이런 오픈 API를 가져와 사용하는 추세다.
 
 
 
 

반응형