bencoderus / laravel-webhook
该软件包允许客户端/企业向其用户发送webhook。
1.1
2021-03-24 13:45 UTC
Requires
- php: ^7.3 || ^8.0
- guzzlehttp/guzzle: ~6|~7
- illuminate/support: ^6.0 || ^7.0 || ^8.0
Requires (Dev)
- orchestra/testbench: ^4.0 || ^5.0 || ^6.0
- phpunit/phpunit: ^9.3
This package is auto-updated.
Last update: 2024-09-27 20:40:54 UTC
README
Laravel Webhook
Laravel webhook使企业能够轻松地向其商家/客户发送webhook。此软件包还引入了一个新的Artisan命令来生成webhook类。
需求
- Composer v1.0/2.0
- PHP (7.3及以上)
- Laravel (6及以上).
安装
您可以通过composer安装此软件包
composer require bencoderus/laravel-webhook
设置
发布基本组件。(迁移和配置文件)
php artisan webhook:install
运行迁移
php artisan migrate
基本用法
创建一个新的webhook类
php artisan make:webhook PaymentWebhook
在App\Http\Webhooks中创建一个新的webhook类
您可以将webhook负载格式化为一个资源。
public function data(): array { return [ 'status' => $this->status, 'amount' => $this->amount, 'currency' => 'USD', ]; }
发送webhook。
$transaction = Transaction::first(); $webhook = new PaymentWebhook($transaction); $webhook->url('https://httpbin.com')->send();
使用加密签名发送
$transaction = Transaction::first(); $webhook = new PaymentWebhook($transaction); $webhook->url('https://httpbin.com') ->withSignature('x-key', 'value_to_hash') ->send();
默认的哈希算法是sha512,您可以通过将不同的哈希算法作为withSignature方法的第三个参数传递来更改它。PHP目前支持超过50种哈希算法。
不使用队列发送webhook。
默认情况下,所有webhook都使用队列分发以方便在失败后重试webhook。您也可以通过将false
传递给send方法来不使用队列发送webhook。
$transaction = Transaction::first(); $webhook = new PaymentWebhook($transaction); $webhook->url('https://httpbin.com')->send(false);
测试
composer test
配置
- 您可以通过config/webhook.php启用或禁用通过webhook发送。
- 您还可以通过config/webhook.php和更多设置启用或禁用webhook的日志记录。
更新日志
有关最近更改的更多信息,请参阅更新日志。
贡献
有关详细信息,请参阅贡献指南。
安全性
如果您发现任何与安全相关的问题,请通过电子邮件me@biduwe.com联系,而不是使用问题跟踪器。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。