En este tutorial, te enseñaré cómo crear una API REST utilizando FastAPI.
FastAPI es un framework web moderno y rápido para construir APIs con Python 3.6+ basado en el estándar ASGI y con la filosofía «menos código, más productividad». Además, FastAPI ofrece una documentación automática interactiva y fácil de usar, lo que lo convierte en una excelente opción para crear APIs.
Antes de comenzar, asegúrate de tener Python 3.6+ instalado en tu sistema. Luego, sigue los siguientes pasos:
Paso 1: Instalación de FastAPI
Para instalar FastAPI, simplemente ejecuta el siguiente comando en tu terminal:¡
pip install fastapi uvicorn
uvicorn
es un servidor ASGI que se utiliza para ejecutar aplicaciones FastAPI.
Paso 2: Creación de la aplicación
Crea un archivo main.py
con el siguiente contenido:
from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"}
En el código anterior, estamos creando una instancia de FastAPI
y definimos una ruta GET
en la raíz de la aplicación (/
) que devuelve un mensaje «Hello World».
Paso 3: Ejecución de la aplicación
Para ejecutar la aplicación, simplemente ejecuta el siguiente comando en tu terminal:
uvicorn main:app --reload
En este comando, estamos especificando el archivo main.py
y la instancia de la aplicación app
para que uvicorn ejecute la aplicación en http://localhost:8000
. La opción --reload
permite que el servidor se reinicie automáticamente cada vez que se realice un cambio en el código.
Paso 4: Prueba de la aplicación
Para probar la aplicación, simplemente visita http://localhost:8000
en tu navegador. Deberías ver el mensaje «Hello World» en la página.
También puedes utilizar una herramienta como Postman para realizar una solicitud GET a http://localhost:8000
y recibir la respuesta.
Personalización de la ruta
Si quieres personalizar la ruta de la API, simplemente cambia el parámetro de la decoración @app.get()
como se muestra a continuación:
@app.get("/items/{item_id}") async def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q}
En este ejemplo, estamos definiendo una ruta /items/{item_id}
que acepta un parámetro de ruta item_id
y un parámetro de consulta opcional q
. La función read_item
devuelve un diccionario con los valores item_id
y q
.
Ejemplo de uso
Puedes usar esta plantilla para crear tus propias rutas GET en FastAPI. Aquí hay un ejemplo adicional que devuelve una lista de elementos:
from typing import Optional from fastapi import FastAPI app = FastAPI() fake_items_db = [{"item_name": "Foo"}, {"item_name": "Bar"}, {"item_name": "Baz"}] @app.get("/items/") async def read_item(skip: int = 0, limit: int = 10): return fake_items_db[skip : skip + limit]
En este ejemplo, estamos definiendo una ruta /items
que acepta dos parámetros de consulta opcionales: skip
y limit
. La función read_item
devuelve una lista de elementos desde la base de datos fake_items_db
, utilizando los parámetros de consulta skip
y limit
para paginar los resultados.
Conclusión
En este tutorial, has aprendido cómo crear una API REST básica utilizando FastAPI. Has creado una aplicación, definido una ruta y personalizado la ruta para aceptar parámetros de consulta y ruta. Además, hemos visto un ejemplo completo de cómo utilizar FastAPI para crear una lista de elementos.
FastAPI es un marco de desarrollo web moderno y rápido que puede ayudarte a construir APIs con Python 3.6+. Su documentación interactiva y fácil de usar hace que el desarrollo de API sea más productivo.
Si estás buscando construir una API de forma rápida y eficiente, FastAPI es una excelente opción.
Ingeniero en Informática, Investigador, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.
1 comentario en «Crear un API Rest usando FAST API (ejemplo sin conexión a base de datos)»