Ідемпотентність для Laravel — це готовий до використання пакет для реалізації ідемпотентності в API запитах. Використовуючи цей пакет, клієнти можуть безпечно повторювати виклики API, не турбуючись про дублюючу обробку.
Завдяки заголовку Idempotency-Key
з унікальним UUID, ви можете надсилати один і той же ключ декілька разів, і оригінальна відповідь буде повернута без повторного виконання операції:
POST /api/payments HTTP/1.1
Content-Type: application/json
Idempotency-Key: 123e4567-e89b-12d3-a456-426614174000
{
"amount": 1000,
"currency": "USD",
"description": "Замовлення #1234"
}
При використанні цього пакету відповіді API містять Idempotency-Key
, який користувачі API можуть безпечно використовувати в майбутньому для повторного виконання операції.
Щоб дізнатися більше про цей пакет, отримати повні вказівки з установки та переглянути вихідний код на GitHub, ви можете встановити пакет через Composer:
composer require infinitypaul/idempotency-laravel
php artisan vendor:publish --provider="Infinitypaul\Idempotency\IdempotencyServiceProvider"