FastAPI es un framework de Python para crear APIs web de manera rápida y fácil. Aquí te proporciono algunos ejemplos básicos de uso de FastAPI:
instalación:
pip install fastapi
1: Hola Mundo
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
Este código crea una aplicación FastAPI básica y define una ruta raíz («/») que devuelve un diccionario JSON con el mensaje «Hello World».
Explicación:
- La primera línea importa la clase
FastAPI
de la librería FastAPI. - La segunda línea crea una instancia de la clase
FastAPI
y la asigna a la variableapp
. - La función decorada
@app.get("/")
define una ruta HTTP GET para la ruta raíz ("/"
). - La función
read_root
se ejecuta cuando se accede a la ruta raíz y devuelve un diccionario JSON con el mensaje «Hello World».
2: Parámetros de consulta
from fastapi import FastAPI
app = FastAPI()
@app.get("/items/")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "q": q}
Este código define una ruta para «/items/» con un parámetro obligatorio item_id
de tipo entero y un parámetro opcional q
de tipo cadena.
Explicación:
- La función decorada
@app.get("/items/")
define una ruta HTTP GET para «/items/». - La función
read_item
toma dos parámetros:item_id
, que es un entero y se espera que esté presente en la URL, yq
, que es una cadena opcional y se puede proporcionar como una consulta. - La función devuelve un diccionario JSON que contiene los valores de los parámetros
item_id
yq
.
3: Datos de formulario
from fastapi import FastAPI, Form
app = FastAPI()
@app.post("/login/")
def login(username: str = Form(...), password: str = Form(...)):
return {"username": username}
Este código define una ruta para «/login/» que espera datos de formulario con los campos «username» y «password».
Explicación:
- La función decorada
@app.post("/login/")
define una ruta HTTP POST para «/login/». - La función
login
espera dos parámetros de formulario:username
ypassword
. - El decorador
Form(...)
indica que los parámetros son campos de formulario obligatorios. - La función devuelve un diccionario JSON que contiene el valor del parámetro
username
.