Webhooks起初看起來像是API,但它們略有不同。它們之間的主要區別在于,webhooks不需要發出請求即可獲得響應,而API則需要發送請求才能獲得響應。使用Webhooks可以接收,而API需要您檢索。
一個示例是GitHub Webhook與GitHub API。對于GitHub API,您每次需要信息時都需要發送GET請求。與GitHub Webhook相比,在GitHub webhook中,您可以打開并添加URL來發送POST數據。正確設置了Webhook之后,無論何時更新GitHub上的信息,數據都會自動發送到您在Webhook設置中擁有的URL。
詳細比較
為了更好地說明,我們可以看兩種情況:使用Webhook和使用API。
使用API:假設我們想要某個服務的Github存儲庫的最新提交日期。首先GitHub Service API需要對GitHub存儲庫所有者帳戶進行身份驗證,然后可以為GET請求的正確端點調用最新的提交日期。
使用 Webhook : GitHub Service Webhook將需要創建自己的Webhook URL,然后將該URL放入GitHub存儲庫的設置中。設置好該URL后,無論何時在存儲庫上發生任何事件,GitHub都會將包含所有更新數據的POST請求發送到我們的webhook URL。如果Webhook正在運行,則可以輕松地在服務上顯示Webhook數據中的最新提交日期。
如上圖所示,使用Webhook可使數據檢索更加自動化。每當有更新時,GitHub Webhooks會將數據移交給我們的服務,而GitHub API要求我們從GitHub檢索數據。
Webhooks的一些缺點是兼容性和支持。由于API更詳細和手動,因此很容易從A點到B點快速集成它們。某些服務尚不支持Webhooks,這使得設置它們更加困難。每個服務通常都會提供一個API。
責編AJX
-
API
+關注
關注
2文章
1511瀏覽量
62401 -
自動化
+關注
關注
29文章
5622瀏覽量
79670
發布評論請先 登錄
相關推薦
評論