偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

調(diào)用三方服務(wù)為什么要使用 Webhook?

開發(fā) 前端
我們可以向外部服務(wù)注冊(cè)一個(gè) Webhook。當(dāng)有關(guān)于請(qǐng)求的最新狀態(tài)更新時(shí),請(qǐng)回調(diào)某個(gè) URL。當(dāng) PSP 完成處理后,它會(huì)調(diào)用 HTTP 請(qǐng)求來更新付款狀態(tài)。

今天來聊聊 Webhook。

Webhook 是 "用戶定義的 HTTP 回調(diào)"。它們通常有以下幾個(gè)特點(diǎn):

  • 由事件觸發(fā),例如支付完成事件。
  • 回調(diào)地址由用戶配置。

下圖顯示了輪詢方式和 webhook 方式的比較。

圖片圖片

假設(shè)我們運(yùn)營(yíng)一個(gè)電子商務(wù)網(wǎng)站。用戶通過 API 網(wǎng)關(guān)向訂單服務(wù)發(fā)送訂單,訂單服務(wù)轉(zhuǎn)到支付服務(wù)進(jìn)行支付。然后,支付服務(wù)與外部支付服務(wù)提供商(PSP)進(jìn)行對(duì)話以完成真正的支付交易。

我們有兩種方法可以處理與外部 PSP 的通信。

短輪詢

向 PSP 發(fā)送支付請(qǐng)求后,支付服務(wù)會(huì)不斷向 PSP 詢問支付狀態(tài)。經(jīng)過幾輪后,PSP 最終返回付款狀態(tài)。

短輪詢有兩個(gè)缺點(diǎn):

  1. 持續(xù)輪詢狀態(tài)需要支付服務(wù)的資源。
  2. 外部服務(wù)直接與支付服務(wù)通信,可能造成安全漏洞。

Webhook

我們可以向外部服務(wù)注冊(cè)一個(gè) Webhook。當(dāng)有關(guān)于請(qǐng)求的最新狀態(tài)更新時(shí),請(qǐng)回調(diào)某個(gè) URL。當(dāng) PSP 完成處理后,它會(huì)調(diào)用 HTTP 請(qǐng)求來更新付款狀態(tài)。

這樣,編程模式就改變了,支付服務(wù)就不再需要浪費(fèi)資源來輪詢支付狀態(tài)了。

如果 PSP 從未回調(diào)怎么辦?我們可以設(shè)置一個(gè) housekeeping 任務(wù),每小時(shí)檢查一次付款狀態(tài)。

Webhook 通常被稱為反向 API 或推送 API,因?yàn)榉?wù)器會(huì)向客戶端發(fā)送 HTTP 請(qǐng)求。

使用 Webhook 時(shí),我們需要注意以下三點(diǎn):

  1. 我們需要設(shè)計(jì)一個(gè)適當(dāng)?shù)?API 供外部服務(wù)調(diào)用。
  2. 出于安全考慮,我們需要在 API 網(wǎng)關(guān)中設(shè)置適當(dāng)?shù)囊?guī)則,比如白名單設(shè)置,限流等。
  3. 我們需要在外部服務(wù)中注冊(cè)正確的 URL。
責(zé)任編輯:武曉燕 來源: ByteByteGo
相關(guān)推薦

2021-12-21 10:24:36

物聯(lián)網(wǎng)平臺(tái)物聯(lián)網(wǎng)IOT

2018-05-16 23:05:46

2014-11-21 10:50:26

JavaString

2011-03-08 12:59:38

proftpd

2017-07-03 13:33:42

AndroidItemDecorat

2018-05-01 06:43:33

2011-04-14 09:30:15

集合框架

2010-05-11 10:29:06

Unix awk

2014-05-19 15:52:57

Apache StraApache

2010-08-04 15:51:18

Ubuntu服務(wù)器版

2022-12-06 08:26:16

SpringAOPthis調(diào)用方法

2017-12-29 09:32:55

無服務(wù)器架構(gòu)排查

2014-04-25 10:05:42

OpenStack私有云公共云

2024-01-24 11:24:03

C++編程異常處理

2024-07-30 09:35:00

2013-09-27 11:33:57

交換機(jī)技術(shù)Vlan技術(shù)

2024-01-30 07:55:03

KubernetesAPI服務(wù)器

2022-06-26 23:03:14

Go標(biāo)準(zhǔn)庫語言

2023-09-21 09:00:00

Merge Que開發(fā)工具Mergify

2014-01-03 10:59:34

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)