weblabnl/laravel-webhook-call
Composer 安装命令:
composer require weblabnl/laravel-webhook-call
包简介
:package_description
README 文档
README
A webhook is a way for an app to provide other applications with real-time information. When an event occurs in the app, a notification is sent in the form of an HTTP request to registered webhooks.
This package allows you to easily store webhook endpoints and events in a database, while the results of the webhook calls are logged in the database. It is built on top of the excellent spatie/laravel-webhook-server package, that provides among things functionality to sign calls and to retry failed calls. This package makes it easier and adds functionality for managing and tracking webhooks and their associated data.
With this package, you can easily manage and track your webhooks, making it possible to build interfaces for managing webhooks on top of this.
Installation
You can install the package via composer:
composer require weblabnl/laravel-webhook-call
You can publish the config file with:
php artisan vendor:publish --provider="Weblab\WebhookCall\WebhookCallServiceProvider"
This is the contents of the file that will be published at config/webhook-call.php. You can change the default values
to your needs and bring your own top model objects.
return [ // the model to use for the webhook calls 'models' => [ // The model that should be used to store the webhook endpoint data. 'webhook' => \Weblab\WebhookCall\Models\Webhook::class, // The model that should be used to store the webhook event data. 'webhook_event' => \Weblab\WebhookCall\Models\WebhookEvent::class, // The model that should be used to store the webhook log data. 'webhook_log' => \Weblab\WebhookCall\Models\WebhookLog::class, ], ];
After installing the package, you can run the migrations using:
php artisan migrate
Usage
Calling a webhook is as simple as:
// fetch a webhook from the database $webhook = Webhook::find(1); // call the webhook WebhookCall::create() ->wehbook($webhook) ->dispatch();
Webhook logging
In addition to storing webhook endpoints and events in the database, this package also provides detailed logs of webhook call results. Both successful and failed results are stored in the database and include information such as the endpoint response code, response, and the original payload. This makes it easy to track and troubleshoot any issues with your webhooks.
Providing the webhook event for the log
When you call a webhook, you can provide an event that will be stored in the log.
// fetch a webhook from the database $webhook = Webhook::find(1); $webhookEvent = $webhook->webhookEvents() ->where('name', 'order.created') ->first(); // call the webhook WebhookCall::create() ->wehbook($webhook) ->webhookEvent($webhookEvent) ->dispatch();
After this, the webhook event is available in any log entries related to this webhook call as well
Entities related to the webhook data
When you call a webhook, you can provide an entity that will be stored in the log.
// fetch a webhook from the database $webhook = Webhook::find(1); // fetch an entity from the database $entity = Order::find(1); // call the webhook WebhookCall::create() ->wehbook($webhook) ->entity($entity) ->dispatch();
After this, the entity is available in any log entries related to this webhook call as well
More options
More available options for testing and the WebhookCall class can be found on the spatie/laravel-webhook-server github page
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Security
If you discover any security-related issues, please email development@weblab.nl instead of using the issue tracker.
License
The MIT License (MIT). Please see License File for more information.
weblabnl/laravel-webhook-call 适用场景与选型建议
weblabnl/laravel-webhook-call 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 3.71k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 12 月 23 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「Weblab.nl」 「laravel-webhook-call」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 weblabnl/laravel-webhook-call 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 weblabnl/laravel-webhook-call 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 weblabnl/laravel-webhook-call 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Alfabank REST API integration
Laravel package for Accurate Online API integration.
Shared RCX Laravel DataTables UI and configuration helpers.
Boot a Laravel project on any machine with one command: app:serve installs missing tools (PHP, Node, Composer, Herd, Docker), creates .env, sets up the database, runs migrations, builds assets, starts a queue worker and serves via Herd, Sail or artisan serve; app:down cleanly stops everything it sta
Branded, diagnostic error pages (500, 403, 404, 419, 503) for Filament — native Filament UI, dark mode and translations out of the box.
Turn any PDF into a Pingen-ready A4 letter (generated address cover page + A4 normalisation + safe margins) and send it through the Pingen print & mail API. Laravel-first.
统计信息
- 总下载量: 3.71k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-12-23