Crear un API Rest usando FAST API (ejemplo sin conexión a base de datos)

Tiempo de lectura: 3 minutos

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.

1 comentario en «Crear un API Rest usando FAST API (ejemplo sin conexión a base de datos)»

Deja un comentario