danielebuso/idempotency

该包最新版本(1.0.1)没有提供许可证信息。

为 Laravel 量身定制且可重复使用的幂等性中间件。

1.0.1 2020-03-16 13:22 UTC

This package is auto-updated.

Last update: 2024-09-17 00:00:17 UTC


README

Latest Version on Packagist Software License Total Downloads

一个超级简单、可定制且自动注册的中间件,可以帮助您确保在需要时请求是幂等的。

受 Stripe 团队 https://stripe.com/blog/idempotency 的启发,以及意识到这个小功能的重要性,我制作了这个包。

特性

幂等性层会将传入的参数与原始请求的参数进行比较,如果不相同则报错,以防止误用。

安装完成后,您可以执行如下操作

// Adding idempotency layer to a route
Route::post('hello-world', function() {
    // stuff
})->middleware('idempotent');

安装

您可以通过 composer 安装此包

composer require danielebuso/idempotency

自定义

您可以通过运行以下命令发布包的配置

php artisan vendor:publish --provider="idempotency\ServiceProvider"

您还可以将幂等性方法自定义到除了 POST 之外的方法,但请注意

根据 HTTP 语义,PUT 和 DELETE 方法是幂等的,尤其是 PUT 方法表示目标资源应该被创建或完全替换为请求负载的内容。