revangelista / laravel-idempotency
Laravel幂等性中间件
1.0.0
2021-05-07 21:40 UTC
Requires
- php: >=5.4.0
This package is auto-updated.
Last update: 2024-09-09 18:09:31 UTC
README
安装
使用以下命令通过composer安装此包
composer require revangelista/laravel-idempotency
使用方法
在您的http kernel文件中注册幂等性中间件
'api' => [ 'throttle:60,1', 'bindings', \Idempotency\Idempotency::class, ]
为了执行幂等性请求,向请求中提供一个额外的头信息Idempotency-Key: <key>
。
它是如何工作的
如果请求中存在头信息Idempotency-Key
,并且请求方法是POST,中间件将响应存储在缓存中。下次您使用相同的幂等性密钥进行请求时,中间件将返回缓存的响应。
如何创建唯一的密钥由您自己决定,强烈建议使用V4 UUID或其他适当的随机字符串。它将为使用相同密钥发出的请求始终返回相同的响应,并且密钥不能与不同的请求参数一起重用。密钥在24小时后过期。
要自定义幂等性头信息名称和密钥过期时间,发布配置文件
php artisan vendor:publish --provider "Idempotency\IdempotencyServiceProvider"
并在.env
文件中指定如下
IDEMPOTENCY_HEADER="My-Custom-Idempotency-Key", IDEMPOTENCY_EXPIRATION=1440 #in minutes
了解有关幂等性的更多信息。
许可证
Laravel幂等性是开源软件,受MIT许可证许可。