웹 후크와 API의 차이점은 무엇입니까?


15

API 를 요청한 프로그래머 는 응답을받습니다. 예를 들어, Web API를 사용하여 이메일을 보내면 요청과 함께 이메일 내용을 전달합니다. 모든 것이 잘되면 성공을 알리는 응답을 받게됩니다.

webhook 을 사용하려면 서비스를 제공하는 회사에 URL을 등록하십시오. 이 URL은 응용 프로그램 내에서 데이터를 받아들이고 무언가를 수행하는 장소입니다. 경우에 따라 데이터를 수신하려는 상황을 제공자에게 알릴 수도 있습니다. 새로운 것이있을 때마다 웹 후크가이를 URL로 보냅니다.

그래서 그들은 기본적으로 같은 일을하고 있습니다.

내 질문은 이것입니다 : webhook과 api의 차이점은 무엇입니까?

WEBHOOK IS ____ 및 API IS ______라는 용어가 아닙니다.

나는 그들이 무엇인지 안다. 주요 차이점과 사용시기 및 사용시기에 관심이 있습니다.

답변:


15

그들 사이의 첫 번째와 주요 차이점은 대부분의 API에는 요청과 응답이 있다는 것입니다. 웹 후크에는 요청이 필요하지 않으며 사용 가능한 데이터 만 전송합니다.

간단한보기 :

API는 example.com의 데이터에 대한 인터페이스입니다. API는 서버에서 example.com 플랫폼으로 사용되며 항목을 나열, 작성, 편집 또는 삭제하는 데 사용할 수 있습니다.

웹 후크는 example.com에서 특정 이벤트가 발생할 때 트리거되는 example.com에서 서버로의 자동 호출입니다. 예를 들어, 작업이 완료되어 실시간으로 알고 자하는 경우 예제 계정에서 EVENT.COMPLETED 웹 후크에 등록한 URL에 POST 요청을합니다.

간단히 말해서 : API는 example.com 사물을 말하는 곳이고 Webhooks는 example.com이 사물을 말하는 곳입니다.

더 자세히 살펴보기 :

SaaS는 개념이며 클라우드에 존재하는 소프트웨어의 개념이며 클라이언트는 일반적으로 브라우저입니다. SaaS 애플리케이션은 사용자에게 제공 할 수있는 기능 (예 : Salesforce가 고객 정보를 저장하는 데 사용할 수있는 데이터베이스를 제공함)으로 정의됩니다. 사용 가능한 기능은 애플리케이션의 목적에 따라 결정됩니다 (예 : CRM, Email Blaster, CMS 등).

API는 SaaS 애플리케이션을 일반적인 통신 방법 (ReST, SOAP, JSON 등)을 통해 다른 애플리케이션과 연결하는 방법입니다. API는 다른 API와 직접 통신 할 수 없습니다. API는 두 API 간의 브리지 역할을하고 실행 스레드를 실행하는 코딩 된 응용 프로그램 또는 미들웨어에서 사용할 수 있습니다. 예를 들어, NetSuite와 Salesforce에는 모두 SOAP API가 있지만 통신하려면 두 시스템과 상호 작용하고 Salesforce의 API를 통해 새 연락처 레코드를 가져오고 새 레코드를 통해 NetSuite로 푸시하도록 구성되는 미들웨어 소프트웨어를 사용하려고합니다. 매시간 API입니다.

Webhook은 SaaS 애플리케이션을위한 또 다른 통신 프로토콜로, 애플리케이션 간 통신은 가능하지만 HTTP POSTS를 사용하여 실행 스레드를 제어합니다. 웹 후크를 사용하면 미들웨어를 사용하지 않고도 애플리케이션이 서로 직접 대화 할 수 있습니다. 예를 들어 WuFoo에 양식을 제출할 때 다른 서비스에 대한 웹 후크 HTTP POST를 시작하고 양식 제출에서 일부 필드 값을 전달하도록 설정할 수 있습니다. 웹 후크는 API와 함께 사용될 수도 있습니다. 예를 들어, 웹 후크가 다른 애플리케이션에 ID X를 기록하는 것에 대해 통보 한 후 API를 사용하여 서비스와 통신하여 새 필드 값을 확인하거나 상태를 수정할 수 있습니다. 기록.

SaaS 애플리케이션없이 API 또는 웹 후크를 갖는 것은 어렵습니다. 그러나 웹 후크 나 (공용) API를 사용하지 않는 SaaS 애플리케이션을 쉽게 가질 수 있습니다. 마찬가지로 SaaS 애플리케이션의 기능에 따라 웹 후크 또는 API를 사용하도록 선택할 수 있습니다.


감사! 나는이 커뮤니티에 참여하여 귀하의 답변 (물론 질문)을 찬성했습니다.
Kaushal28

11

API 는 요청하면 작업을 수행하지만 Webhook 은 특정 기준이 일치하면 자체 작업을 수행합니다.

간단히 말해서 : API는 우리에게 물건을 알려주는 곳이고 Webhooks는 우리가 물건을 말하는 곳입니다.

http://apidocs.teamwork.com/article/466-whats-the-difference-between-the-api-and-webhooks 를 통해

새로운 것이있을 때마다 웹 후크가이를 URL로 보냅니다.

https://sendgrid.com/blog/webhook-vs-api-whats-difference/ 를 통해


5

신용 카드 결제와 같은 구체적인 예를 통해이를 설명하겠습니다.

귀하의 사이트가 신용 카드를 청구하려고 할 때 신용 카드 프로세서에서 API 를 호출합니다 . 그런 다음 신용 카드 프로세서는 신용 카드에 청구하여 해당 API 호출에 성공 또는 실패 상태를 반환합니다.

신용 카드 처리기는 나중에이 거래와 관련하여 사이트를 업데이트하는 방법이 필요할 수 있습니다. 예를 들어, 거래는 다음 주에 취소 될 수 있습니다. 당신의 신용 카드 처리기는 이것에 대해 당신에게 이메일을 보낼 수 있습니다. 그것을 다루는 또 다른 방법은 webhook 입니다. 귀하는 신용 ​​카드 처리기에게 귀하의 사이트에서 귀하에게 데이터를주고받을 수있는 URL을 알려줍니다. 거래가 취소되면 웹 후크를 지원하는 신용 ​​카드 프로세서가 사용자가 제공 한 URL로 사이트에 접속하여 웹 응용 프로그램을 구문 분석하고 자동으로 처리 할 수 ​​있도록 컴퓨터에서 읽을 수있는 형식으로 데이터를 보냅니다.

웹 후크는 API의 콜백 메커니즘입니다. 기본적으로 호출하는 API와 함께 비동기 콜백을위한 API를 구현 합니다.


"기본적으로 비동기 콜백을 위한 API 를 구현합니다 ..."- "webhook"이 아니어야합니까?
MrWhite

1
webhook이 구현하는 API라고 말하려고합니다. API를 호출합니다. 웹 후크는 사용자가 호출하도록 구현하는 API입니다.
Stephen Ostermiller

2

평신도의 용어에서 webhook과 API의 차이점에 대한 예는 다음과 같습니다.

온라인으로 물건을 주문했는데 오늘 배달이 되겠다고 가정 해보자. 일단 하녀가 도착하면 패키지를 가져 오라고 말했다. 목표는 패키지가 이미 도착한 경우 통지를 받아야한다는 것입니다. 이것이 일어나는 일입니다 :

웹 후크

  • 패키지가 도착하면 하녀가 즉시 전화하여 패키지가 이미 도착했음을 알려줍니다.

API

  • 패키지가 이미 도착했지만 여전히 알 수 없습니다. 그런 다음 하녀에게 전화를 걸어 이미 도착했는지 묻고 예라고 말합니다.

차이점은 API 에서 호출과 같은 데이터를 가져 오기 위해 트리거가 필요한 반면, 웹훅 은 트리거없이 새 데이터가 도착 하면 자동으로 알려줍니다.


0

API는 당신이 지리적 위치 서비스 웹 사이트 (기존 플랫폼) 구글 사용하려면 (개발 : 간단하게 예를 들어, 기존의 플랫폼에서 모든 개발 플랫폼의 특정 기능이나 데이터에 액세스하는 데 사용되는 작은 응용 프로그램입니다 전체 시스템을 재구성하고 위성을 설정하는 대신 작은 API 를 사용하여 Google에서 해당 기능에 액세스합니다.

하지만 웹 후크는 단순히 반환 또는 응답하고 사용하여 요청 된 데이터 귀하의 웹 사이트 또는 플랫폼 가을 백 URL입니다 API를 보내 당신은 당신이 찾는 정보가 수집되고있다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.