Webhook
让别人的服务在发生特定事件时主动通知你——不用你反复去问"好了没"。
它到底指什么?
普通的 API 调用像是你打电话问快递公司"我的包裹到了没?"——你需要主动去问,而且可能要问很多次。
Webhook 则像是你留了一个电话号码给快递员,让他到了之后直接打给你。你不需要每隔五分钟打一次电话去问,包裹一到,你就会收到通知。
在技术上,Webhook 就是你提供一个网址(URL)给对方的服务,当特定事件发生时,对方的服务会向这个网址发送一个包含事件信息的请求。
什么时候会碰到它?
当你在部署平台(如 Vercel)上配置了"代码推送后自动部署"时,GitHub 就是通过 Webhook 通知 Vercel "有新代码推送了"的。当你接入支付系统(如 Stripe)时,支付完成后 Stripe 也是通过 Webhook 告诉你的服务器"这笔订单付款成功了"。
有什么需要注意的?
Webhook 需要你有一个能被外部访问的服务器来接收通知——本地开发环境的 localhost 通常无法直接接收。在开发阶段,可以使用 ngrok 之类的工具把你的本地服务暂时暴露到公网,以便测试 Webhook。另外,处理 Webhook 时应该验证请求是否真的来自你期望的服务方,防止伪造通知。
也叫
Webhook回调地址事件通知
和谁相连