如何使用不同的通知类型测试braintree webhooks

use*_*353 6 webhooks braintree cakephp-2.3

我想用不同的通知测试我的webhook功能.现在我能够测试它只是为了取消订阅(通过取消braintree后端的订阅).

$webhookNotification = Braintree_WebhookNotification::parse($sampleNotification["bt_signature"], $sampleNotification["bt_payload"]);        
Run Code Online (Sandbox Code Playgroud)

我也试过https://www.braintreepayments.com/docs/php/webhooks/testing:

$sampleNotification = Braintree_WebhookTesting::sampleNotification(Braintree_WebhookNotification::SUBSCRIPTION_WENT_ACTIVE,'1234qwe');
$webhookNotification = Braintree_WebhookNotification::parse($sampleNotification["bt_signature"], $sampleNotification["bt_payload"]);
Run Code Online (Sandbox Code Playgroud)

但API返回的结果并不令人满意.无论订阅ID是否存在,它始终为所有通知类型返回相同的数组.

小智 3

你是对的,他们Braintree_WebhookTesting::sampleNotification不知道你的布伦特里保险库的状态。该方法旨在用于快速模拟可能收到的所有 Webhook 通知类型,因为可能会涉及设置接收 Webhook 的测试环境。

如果您希望接收具有不同通知类型的实际 Webhook,则必须创建您希望接收 Webhook 的订阅、商家帐户或 Braintree 对象。

全面披露:我是 Braintree 开发人员。

  • 我同意@sanya。如果对象没有像正常的 webhook 调用一样完全填充,sampleNotification 功能对我的测试并没有多大帮助。我可以看到通知将命中某个通知的代码的正确部分,但我无法真正测试在没有填充正确字段的情况下如何处理该通知。 (4认同)