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

Метод getRemainingTokens

Метод getRemainingTokens принадлежит классу RateLimit и возвращает целое число - количество токенов, которые ещё доступны в данный момент. Метод не принимает параметров. Обычно он используется вместе с методом isAccepted, чтобы показать пользователю, сколько попыток у него осталось.

Синтаксис

public function getRemainingTokens(): int

Пример

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

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

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

4

Пример

Давайте выведем количество оставшихся токенов в виде строки:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\RateLimiter\RateLimiterFactory; class ArticleController extends AbstractController { public function index(RateLimiterFactory $anonymousApiLimiter): Response { $limiter = $anonymousApiLimiter->create('user'); $limit = $limiter->consume(1); $res = 'Remaining tokens: ' . $limit->getRemainingTokens(); return new Response($res); } } ?>

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

"Remaining tokens: 4"

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

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