DÍA 01API de lectura con FastAPI · Python Backend y APIs para Datos

Crea una aplicación FastAPI y una ruta de salud para comprobar que el servidor responde.

Día 1 15 minInicial

Crear una ruta con FastAPI

Objetivos

Vas a poner en marcha una API mínima antes de conectarla con la base de muestra Sakila.

Concepto

API significa Application Programming Interface (interfaz de programación de aplicaciones): una forma acordada para que un programa solicite información o acciones a otro. En esta lección, el servidor recibe solicitudes HTTP (Hypertext Transfer Protocol, protocolo de transferencia de hipertexto) y responde en JSON (JavaScript Object Notation), un formato de texto para intercambiar datos. GET solicita leer un recurso; la ruta /health (también llamada endpoint) solo confirma que la aplicación responde y todavía no consulta MySQL.

Ejemplo

Instala las dependencias del ejercicio con python -m pip install fastapi uvicorn y guarda esto en main.py:

from fastapi import FastAPI
 
app = FastAPI(title="Sakila Read API")
 
 
@app.get("/health")
def health() -> dict[str, str]:
    return {"status": "ok"}

Desde la carpeta del archivo, inicia el servidor con python -m uvicorn main:app --reload. El decorador @app.get registra la ruta de lectura /health; la función devuelve un diccionario Python y FastAPI lo convierte a JSON. Visita /health y revisa que la respuesta contenga status igual a ok.

Nota

Límite: que /health responda no demuestra que la base de datos esté disponible; aún no hemos creado una conexión.

Práctica guiada

  1. Cambia el valor de status a ready.
  2. Agrega una clave service con el valor sakila-api.
  3. Reinicia y comprueba la respuesta JSON.

Reto

Crea una segunda ruta GET /about que devuelva el nombre del servicio y que no acceda ni escriba en la base.

Quiz

¿Qué hace la ruta /health de este ejemplo?

  • A. Cambia un registro de cliente.
  • B. Confirma que el servidor web responde.
  • C. Ejecuta una consulta SQL.

Respuesta: B. La función solo devuelve un objeto JSON.

Comprobación

Identifica el decorador que registra una ruta GET. La siguiente lección define el modelo de lectura para la tabla customer.

TU PROGRESO

Cargando estado…