dcabrejas/magento-rate-limit

Rate Limiting Library With Token Bucket Algorithm with Magento Adapter

1.0.0 2017-07-04 15:23 UTC

This package is not auto-updated.

Last update: 2024-05-07 15:08:05 UTC


README

Magento 2 adapter for the touhonoob/RateLimit Library

Installation

composer require dcabrejas/magento-rate-limit

Usage

//Inject the adapter via dependency injection
public function __construct(\Dcabrejas\RateLimit\Adapter\Magento $magentoAdapter)
{
  $this->magentoAdapter = $magentoAdapter;
}


$rateLimit = new \Touhonoob\RateLimit\RateLimit("myratelimit", 100, 3600, $this->magentoAdapter); // 100 Requests / Hour

$id = $_SERVER['REMOTE_ADDR']; // Use client IP as identity
if ($rateLimit->check($id) > 0) {
  echo "passed";
} else {
  echo "rate limit exceeded";
}