Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MY LIMITER METHODS ------------------------------------
- async def ip_identifier(request: Request):
- forwarded = request.headers.get("X-Forwarded-For")
- if forwarded:
- return forwarded.split(",")[0]
- return f"{request.client.host}:shared-limit"
- def get_shared_limiter():
- return shared_limiter
- def get_rate_limiter() -> RateLimiter:
- return RateLimiter(
- limiter=get_shared_limiter(),
- identifier=ip_identifier
- )
- MY APP LIMITER SETUP ----------------------------------
- app = FastAPI(
- dependencies=[
- Depends(
- get_rate_limiter()
- )
- ],
- )
- MY CURRENT TEST SETUP (DOES NOT WORK) -----------------
- @pytest.fixture(autouse=True, scope="session")
- def mock_limiter():
- app.dependency_overrides[get_rate_limiter] = lambda: RateLimiter(limiter=Limiter(Rate(100000, Duration.SECOND)), identifier=ip_identifier)
Advertisement
Add Comment
Please, Sign In to add comment