РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
837 of 1361 menu

Метод isAccepted

Метод isAccepted класса RateLimit проверяет, был ли текущий запрос принят в рамках установленного ограничения частоты. Он возвращает true, если лимит не превышен, и false, если запрос отклонён. Этот метод не принимает параметров и работает с объектом, который возвращается после вызова consume у RateLimiter.

Синтаксис

public function isAccepted(): bool

Пример

Давайте создадим ограничитель и проверим, принят ли запрос:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\RateLimiter\RateLimiterFactory; class RateLimitController extends AbstractController { public function index(RateLimiterFactory $anonymousApiLimiter): Response { $limiter = $anonymousApiLimiter->create('user'); $limit = $limiter->consume(1); if ($limit->isAccepted()) { return new Response('accepted'); } return new Response('rejected'); } } ?>

Результат выполнения кода при первой попытке:

accepted

Пример

Давайте проверим лимит после его исчерпания:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\RateLimiter\RateLimiterFactory; class RateLimitController extends AbstractController { public function index(RateLimiterFactory $anonymousApiLimiter): Response { $limiter = $anonymousApiLimiter->create('user'); $limit = $limiter->consume(5); $res = $limit->isAccepted(); return new Response(var_export($res, true)); } } ?>

Результат выполнения кода при превышении лимита:

false

Смотрите также

  • класс RateLimit,
    который представляет результат проверки лимита
  • метод getRemainingTokens,
    который возвращает количество оставшихся токенов
  • метод getRetryAfter,
    который возвращает время до следующей попытки
  • метод consume,
    который расходует токены и возвращает объект RateLimit
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить