ppt-tool/backend/api/middlewares/rate_limit_middleware.py
Vadym Samoilenko 0d616c7a3f Fix slowapi Response parameter issue
Disable headers_enabled to avoid requiring Response parameter.

Co-Authored-By: Claude Sonnet 4.5 (1M context) <noreply@anthropic.com>
2026-02-27 20:29:00 +00:00

22 lines
594 B
Python

"""
Rate limiting middleware using slowapi.
Provides protection against DOS attacks by limiting requests per IP address.
"""
from slowapi import Limiter
from slowapi.util import get_remote_address
# Create limiter instance
# Key function: use IP address to track requests
# Default limit: 100 requests per minute per IP
limiter = Limiter(
key_func=get_remote_address,
default_limits=["100/minute"],
headers_enabled=False, # Disable to avoid Response parameter requirement
)
def get_limiter():
"""Get the limiter instance for use in route decorators."""
return limiter