Spaces:
Build error
Build error
Commit
·
69dc148
1
Parent(s):
34a57af
Rate limiter
Browse files- app/main.py +4 -2
- requirements.txt +0 -0
app/main.py
CHANGED
@@ -5,6 +5,7 @@ from fastapi.exceptions import HTTPException
|
|
5 |
from slowapi import Limiter, _rate_limit_exceeded_handler
|
6 |
from slowapi.errors import RateLimitExceeded
|
7 |
from slowapi.util import get_remote_address
|
|
|
8 |
from typing import Dict, List
|
9 |
from prometheus_client import Counter, Histogram, start_http_server
|
10 |
from pydantic import BaseModel, ValidationError
|
@@ -74,7 +75,8 @@ app = FastAPI(lifespan=lifespan)
|
|
74 |
app.state.limiter = limiter
|
75 |
app.add_exception_handler(RateLimitExceeded, _rate_limit_exceeded_handler)
|
76 |
|
77 |
-
|
|
|
78 |
|
79 |
# app.include_router(users.router, prefix="/users", tags=["Users"])
|
80 |
|
@@ -92,7 +94,7 @@ class WebhookPayload(BaseModel):
|
|
92 |
entry: List[Dict]
|
93 |
|
94 |
@app.post("/webhook")
|
95 |
-
@limiter.limit("
|
96 |
async def webhook(request: Request):
|
97 |
try:
|
98 |
payload = await request.json()
|
|
|
5 |
from slowapi import Limiter, _rate_limit_exceeded_handler
|
6 |
from slowapi.errors import RateLimitExceeded
|
7 |
from slowapi.util import get_remote_address
|
8 |
+
from slowapi.middleware import SlowAPIMiddleware
|
9 |
from typing import Dict, List
|
10 |
from prometheus_client import Counter, Histogram, start_http_server
|
11 |
from pydantic import BaseModel, ValidationError
|
|
|
75 |
app.state.limiter = limiter
|
76 |
app.add_exception_handler(RateLimitExceeded, _rate_limit_exceeded_handler)
|
77 |
|
78 |
+
# Add SlowAPI Middleware
|
79 |
+
app.add_middleware(SlowAPIMiddleware)
|
80 |
|
81 |
# app.include_router(users.router, prefix="/users", tags=["Users"])
|
82 |
|
|
|
94 |
entry: List[Dict]
|
95 |
|
96 |
@app.post("/webhook")
|
97 |
+
@limiter.limit("20/minute")
|
98 |
async def webhook(request: Request):
|
99 |
try:
|
100 |
payload = await request.json()
|
requirements.txt
CHANGED
Binary files a/requirements.txt and b/requirements.txt differ
|
|