Source code for baguette.middleware

from .config import Config
from .request import Request
from .responses import Response


[docs]class Middleware: """Base class for middlewares. Arguments --------- next_middleware : :class:`Middleware` The next middleware to call. config : :class:`Config` The application configuration. Attributes ---------- next_middleware : :class:`Middleware` The next middleware to call. nexte : :class:`Middleware` The next middleware to call. (Alias for :attr:`next_middleware`) config : :class:`Config` The application configuration. """ def __init__(self, next_middleware: "Middleware", config: Config): self.next_middleware = self.next = next_middleware self.config = config
[docs] async def __call__(self, request: Request) -> Response: """Call the middleware, executed at every request. Arguments --------- request: :class:`Request` The request to handle. Returns ------- :class:`Response` The handled response. """ return await self.next(request) # pragma: no cover