Skip to content

Livewire trait (throttling). Limiting request processing speed

License

Notifications You must be signed in to change notification settings

f1uder/livewire-throttling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Livewire Throttling

Latest Version on Packagist Total Downloads

Installation

You can install the package via composer:

composer require f1uder/livewire-throttling

Usage Livewire component

<?php

namespace App\Http\Livewire\Test;

use Livewire\Component;
use Nrox\LivewireThrottling\ThrottlingTrait;

class TestComponent extends Component
{
    use ThrottlingTrait; // use Trait
    
   /**
    * Thrown out ValidationException
    * name: throttle
    */
    public function test()
    {
        $this->rateLimit('10'); // Limit 10 requests per minute
    }
    
    public function testCallback()
    {
        $this->rateLimit('10', function ($sec) {
            abort(429);
        });
    }
}

Clear Rate Limit

$this->clearRateLimit();

Lang message error (support: en)

Add Russian lang

lang/ru.json

"Too many requests, try again in :sec seconds.": "Слишком много запросов, повторите попытку через :sec сек."

License

The MIT License (MIT). Please see License File for more information.