joggapp/laravel-aws-sns

Laravel 对 AWS SNS 事件的封装包

v7.0.0 2024-03-13 08:00 UTC

This package is auto-updated.

Last update: 2024-09-13 09:03:22 UTC


README

Latest Version Total Downloads

亚马逊简单通知服务(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');
  • 该包发出两个事件:SnsTopicSubscriptionConfirmedSnsMessageReceived

  • 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)。有关更多信息,请参阅 许可文件