test24 / api /rpmlimits.py
Niansuh's picture
Update api/rpmlimits.py
734aed4 verified
raw
history blame
566 Bytes
from slowapi import Limiter
from slowapi.util import get_remote_address
from slowapi.errors import RateLimitExceeded
from fastapi import FastAPI, Request
from starlette.responses import JSONResponse
# Initialize the limiter
limiter = Limiter(key_func=get_remote_address)
# Exception handler for rate limit exceeded
async def rate_limit_exceeded_handler(request: Request, exc: RateLimitExceeded):
return JSONResponse(
status_code=429,
content={"error": {"message": "Rate limit exceeded. Please wait and try again.", "type": "rate_limit"}}
)