El middleware se encuentra entre un enrutador API y sus rutas, actuando como una capa donde puede ejecutar código antes y después de procesar una solicitud. En este artículo, exploraremos dos casos de uso clave para middleware en FastAPI, demostrando ambos cómo funciona y Por qué es útil. ¡Codifiquemos!
Para comenzar, creemos una API simple que sirva como base para nuestros ejemplos de middleware. La siguiente aplicación solo ofrece una ruta: test
que simula un trabajo real durmiendo durante unos milisegundos antes de devolver «OK».
import random
import timefrom fastapi import FastAPI
app = FastAPI(title="My API")
@app.get('/test')
def test_route() -> str:
sleep_seconds:float = random.randrange(10, 100) / 100
time.sleep(sleep_seconds)
return "OK"
¿Qué es el middleware?
El middleware actúa como un filtro entre la solicitud HTTP entrante y el procesamiento realizado por su aplicación. Piense en ello como en la seguridad de un aeropuerto: cada pasajero debe pasar por el control de seguridad antes y después de abordar el avión. Asimismo, cada solicitud de API pasa por el middleware: ambos antes de ser procesada…