add basic rate limiting
This commit is contained in:
@ -1,5 +1,10 @@
|
||||
import logging
|
||||
from fastapi import FastAPI, Request, Response
|
||||
from fastapi import (
|
||||
FastAPI,
|
||||
Request,
|
||||
Response,
|
||||
Depends)
|
||||
from fastapi_throttle import RateLimiter
|
||||
from fastapi.responses import JSONResponse
|
||||
from utils.meme_util import MemeUtil
|
||||
|
||||
@ -22,7 +27,11 @@ class Meme(FastAPI):
|
||||
|
||||
for endpoint, handler in self.endpoints.items():
|
||||
app.add_api_route(
|
||||
f"/{endpoint}", handler, methods=["GET"], include_in_schema=True
|
||||
f"/{endpoint}", handler,
|
||||
methods=["GET"], include_in_schema=True,
|
||||
dependencies=[Depends(
|
||||
RateLimiter(times=2, seconds=2)
|
||||
)]
|
||||
)
|
||||
|
||||
async def get_meme_by_id(self, id: int, request: Request) -> Response:
|
||||
|
Reference in New Issue
Block a user