request_limiter package¶
Submodules¶
request_limiter.decorators module¶
request_limiter.exceptions module¶
request_limiter.strategy module¶
-
class
request_limiter.strategy.LimitStrategy[source]¶ Bases:
objectA request limit strategy abstract class
-
class
request_limiter.strategy.LimitedIntervalStrategy(requests: Optional[int] = 100, interval: Optional[int] = 86400, now: Optional[Callable[[], float]] = <built-in function monotonic>, storage: Optional[dict] = None)[source]¶ Bases:
request_limiter.strategy.LimitStrategy-
DEFAULT_KEY= 'default'¶
-
Module contents¶
Top-level package for Request Limiter.
-
request_limiter.request_limiter¶
-
request_limiter.django_request_limiter(f)[source]¶ Returns a wrapped function for django request handler function. It applies limit strategy based on request IP and returns 429. :param f: django request handler function decorated with request_limiter :return: wrapped function
-
class
request_limiter.LimitStrategy[source]¶ Bases:
objectA request limit strategy abstract class
-
class
request_limiter.LimitedIntervalStrategy(requests: Optional[int] = 100, interval: Optional[int] = 86400, now: Optional[Callable[[], float]] = <built-in function monotonic>, storage: Optional[dict] = None)[source]¶ Bases:
request_limiter.strategy.LimitStrategy-
DEFAULT_KEY= 'default'¶
-