apifrom.middleware.base ======================= Base middleware classes for APIFromAnything. This module defines the base middleware classes that can be used to process requests and responses. .. py:currentmodule:: apifrom.middleware.base Overview -------- **Classes** * :py:class:`BaseMiddleware` * :py:class:`Middleware` Classes ------- .. py:class:: BaseMiddleware(**options):bases: abc.ABC Base middleware class for APIFromAnything. This abstract class defines the interface for middleware components. Middleware components can process requests and responses. .. attribute:: options Options for the middleware. :type: dict Initialize a new BaseMiddleware instance. :param \*\*options: Options for the middleware. .. :: options .. method:: process_request(request) :abstractmethod: :async: Process a request. :param request: The request to process. :returns: The processed request. .. method:: process_response(response) :abstractmethod: :async: Process a response. :param response: The response to process. :returns: The processed response. .. py:class:: Middleware(app, dispatch = None):bases: starlette.middleware.base.BaseHTTPMiddleware, BaseMiddleware Middleware class for APIFromAnything. This class implements the BaseMiddleware interface and extends Starlette's BaseHTTPMiddleware to provide a middleware component that can be used with Starlette. Initialize a new BaseMiddleware instance. :param \*\*options: Options for the middleware. .. method:: dispatch(request, call_next) :async: Dispatch a request. This method is called by Starlette to process a request. :param request: The request to process. :param call_next: A function to call the next middleware or route handler. :returns: The response. .. method:: process_request(request) :abstractmethod: :async: Process a request before it is handled by the API. :param request: The request to process. :returns: The processed request. .. method:: process_response(response) :async: Process a response after it is handled by the API. :param response: The response to process. :returns: The processed response.