Parámetros de ruta y de consulta en Python
Las anotaciones declaran de dónde viene un valor y qué tipo debe tener.
from fastapi import FastAPI
from fastapi.testclient import TestClient
app = FastAPI()
@app.get("/tours/{lang}/{idx}")
def paso(lang: str, idx: int, verbose: bool = False):
cuerpo = {"lang": lang, "idx": idx}
if verbose:
cuerpo["detail"] = "la versión larga"
return cuerpo
cliente = TestClient(app)
print(cliente.get("/tours/rust/3").json())
print(cliente.get("/tours/rust/3", params={"verbose": True}).json())
print(cliente.get("/tours/rust/not-a-number").status_code)
Cómo funciona
- Un nombre en la ruta es un parámetro de ruta, tipado por su anotación.
- Todo lo demás con valor por defecto es un parámetro de consulta.
- Un tipo malo es un 422 antes de que el handler corra.
Palabras clave y builtins usados aquí
booldefifintprintreturnstr
El intento, en números
- Líneas
- 18
- Caracteres a escribir
- 473
- Tokens
- 133
- Ritmo de tres estrellas
- 110 tpm
Al ritmo de tres estrellas de 110 tokens por minuto, este intento toma unos 73 segundos.
Paso 2 de 4 en Rutas de FastAPI; paso 7 de 19 en Servicios web y acceso a datos.