typestar

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

  1. Un nombre en la ruta es un parámetro de ruta, tipado por su anotación.
  2. Todo lo demás con valor por defecto es un parámetro de consulta.
  3. Un tipo malo es un 422 antes de que el handler corra.

Palabras clave y builtins usados aquí

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.

Escribe este fragmento

Paso 2 de 4 en Rutas de FastAPI; paso 7 de 19 en Servicios web y acceso a datos.

← Anterior Siguiente →