digiaonline/lumen-sns-middleware

此包已被 废弃 且不再维护。未建议替代包。

处理 AWS SNS 通知的中间件和助手函数集合

1.1.0 2020-09-03 13:13 UTC

This package is auto-updated.

Last update: 2023-03-05 11:55:29 UTC


README

Build Status Scrutinizer Code Quality Coverage Status

此库包含处理 AWS SNS 通知的中间件和助手函数集合。

功能

  • 用于验证 SNS 通知签名的中间件
  • 用于透明处理订阅和取消订阅确认的中间件
  • 用于从 HttpFoundation 请求对象创建 SNS Message 对象的工厂(Lumen 使用此功能)
  • 用于通知类型的基枚举类

要求

  • PHP >= 7.0
  • Lumen >= 5.5

安装

将库作为依赖项添加

composer require digiaonline/lumen-sns-middleware 

注册服务提供者

$app->register(Digia\Lumen\SnsMiddleware\Providers\SnsMiddlewareServiceProvider::class);

使用

将以下任一中间件应用到路由中

  • MessageValidatorMiddleware - 验证请求并抛出异常,如果没有包含有效的 SNS 消息
  • HandleSubscriptionConfirmationMiddleware - 自动确认 SubscriptionConfirmation 消息
  • HandleUnsubscribeConfirmationMiddleware - 自动确认 UnsubscribeConfirmation 消息

使用自定义 HTTP 客户端

如果出于某种原因,在验证消息或确认订阅/取消订阅消息时需要使用自定义 HTTP 客户端,请将 HttpClientInterface 的实现绑定到容器中,例如

$app->bind(HttpClientInterface::class, MyImplementation::class);

许可证

MIT

测试

运行 composer test