You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Cashier中WebhookReceived与WebhookHandled的区别是什么?

Laravel Billing 中 WebhookReceived 与 WebhookHandled 的核心区别

二者核心差异集中在触发时机、适用场景、携带数据三个维度,你觉得表现一致通常是因为只用到了原始webhook载荷,没有接触到时序和处理结果相关的逻辑:

  • 触发时机不同
    WebhookReceived 是Billing组件刚接收到webhook请求、还未执行任何内置默认处理逻辑时触发,是整个webhook处理流程的最前置节点。
    WebhookHandled 是Billing组件完成了对应webhook事件的所有内置默认处理(比如修改订阅状态、记录支付记录、处理逾期逻辑等)之后才触发,是webhook处理流程的后置节点。
  • 适用场景不同
    WebhookReceived 适合做前置操作:比如全量webhook请求日志落库、自定义来源校验、特殊事件拦截(如果你不想让系统执行某类webhook的默认逻辑,可以在这个事件的监听器中直接终止流程)。
    WebhookHandled 适合做后置扩展操作:比如订阅续费成功后给用户发通知、支付完成后给账户加权益、同步处理结果到内部业务系统等,这时候获取到的业务数据已经经过内置逻辑处理,不会出现时序错误。
  • 携带数据差异
    WebhookReceived 仅携带未修改的原始webhook请求载荷。
    WebhookHandled 除了原始载荷之外,还会携带内置处理器的处理结果、关联业务模型实例(比如订阅模型、支付单模型)、处理状态标识等扩展数据。

内容的提问来源于stack exchange,提问作者I am L

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 14:24:03