joggapp / laravel-aws-sns
Laravel 对 AWS SNS 事件的封装包
v7.0.0
2024-03-13 08:00 UTC
Requires
- php: ^8.2
- aws/aws-php-sns-message-validator: ^1.6
- illuminate/http: ^11.0
- illuminate/queue: ^11.0
- illuminate/support: ^11.0
README
亚马逊简单通知服务(Amazon SNS)是一个网络服务,用于协调和管理将消息发送到订阅端点或客户端。Amazon S3 通知功能允许您在您的存储桶中发生某些事件时接收通知。
此包附带一个控制器,该控制器监听发送到您定义的 URL/端点的 SNS 通知。该控制器负责验证传入请求的签名和消息,确认您的端点已订阅 SNS 主题,并也发出相应的 Laravel 事件。如果您使用 AWS SNS,安装此包后,您只需添加所需的 Laravel 监听器。监听器将自动接收 SNS 消息。您可以在之后自由控制消息以实现您期望的结果。
安装和用法
- 您可以使用以下命令通过 composer 安装此包
composer require joggapp/laravel-aws-sns
-
包将自动注册。
-
然后您需要将路由传递给
awsSnsWebhooks
Route::awsSnsWebhooks('route-you-added-in-aws-sns-topic-subscription-console');
-
该包发出两个事件:
SnsTopicSubscriptionConfirmed
和SnsMessageReceived
。 -
SnsTopicSubscriptionConfirmed
:此事件在端点订阅 SNS 主题被确认时触发。 -
SnsMessageReceived
:此事件在端点从 AWS SNS 接收消息(请求)时触发。 -
要使用这些事件,您必须在
app/Providers/EventServiceProvider.php
中添加事件 -
您可以在监听
SnsMessageReceived
事件的监听器中访问 SNS 消息,就像在 Laravel 的任何其他监听器中一样
class SnsListener { public function handle($event) { $event->message } }
变更日志
请参阅 CHANGELOG 了解最近更改的更多信息。
安全性
如果您发现任何安全问题,请通过电子邮件发送到 harish@jogg.co 而不是使用问题跟踪器。
致谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 许可文件。