INNER CODE UNIT · Python
_AuthMiddleware
roboflow/inference · inference_server/inference_server/app.py:465
class _AuthMiddleware:
"""ASGI middleware for auth — does NOT buffer the request body.
Starlette's @app.middleware("http") with call_next consumes the body
stream before passing to the route, breaking request.stream() in endpoints.
This raw ASGI middleware avoids that by passing receive through untouched.
"""
def __init__(self, app):
self.app = app
async def __call__(self, scope, receive, send):
if scope["type"] == "websocket":
# No websocket routes exist; a future one must not ship
# unauthenticated by default.
await send({"type": "websocket.close", "code": 1008})
return
if scope["type"] != "http":