FastAPI GET: Creación de Endpoints GET en FastAPI

FastAPI GET: Creación de Endpoints GET en FastAPI

FastAPI es un framework de microservicios web de Python que se basa en el paradigma de programación asincrónica. Es una herramienta muy popular para el desarrollo de APIs REST, ya que ofrece una sintaxis sencilla y flexible, así como un rendimiento óptimo.

En este tutorial, aprenderemos a crear endpoints GET en FastAPI. Los endpoints GET son los más comunes en las APIs REST, y se utilizan para devolver datos al cliente.

Paso 1: Importar FastAPI

Lo primero que tenemos que hacer es importar el módulo FastAPI.

Python
from fastapi import FastAPI

Paso 2: Crear una aplicación FastAPI

A continuación, creamos una aplicación FastAPI.

Python
app = FastAPI()

Paso 3: Definir un endpoint GET

Para definir un endpoint GET, utilizamos la anotación @app.get().

Python
@app.get("/")
def index():
    return "Hola, mundo!"

Este endpoint devolverá el mensaje «Hola, mundo!» al cliente.

Paso 4: Ejecutar la aplicación FastAPI

Para ejecutar la aplicación FastAPI, podemos utilizar el método run().

Python
if __name__ == "__main__":
    app.run()

Ejemplo completo

Python
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def index():
    return "Hola, mundo!"

if __name__ == "__main__":
    app.run()

Pruebas

Podemos probar nuestro endpoint GET utilizando un cliente HTTP, como Postman o Insomnia.

En Postman, crearemos una nueva solicitud GET a la URL http://localhost:8000.

La respuesta de la solicitud debe ser el mensaje «Hola, mundo!».

Retorno de datos

En el ejemplo anterior, nuestro endpoint GET devuelve un simple mensaje de texto. Sin embargo, también podemos devolver datos de cualquier tipo, como diccionarios, listas o objetos serializables.

Por ejemplo, el siguiente endpoint devolverá una lista de usuarios:

Python
@app.get("/users")
def users():
    return [
        {"id": 1, "name": "Juan"},
        {"id": 2, "name": "Pedro"},
        {"id": 3, "name": "María"},
    ]

Parámetros de consulta

Los endpoints GET también pueden aceptar parámetros de consulta. Los parámetros de consulta se especifican en la URL de la solicitud, después de un signo de interrogación.

Por ejemplo, el siguiente endpoint GET devolverá una lista de usuarios que coincidan con un determinado nombre:

Python
@app.get("/users")
def users(name: str):
    return [
        {"id": 1, "name": name},
        {"id": 2, "name": name},
        {"id": 3, "name": name},
    ]

En este caso, la solicitud http://localhost:8000/users?name=Juan devolverá una lista con un solo elemento, que es el usuario con el nombre «Juan».

Conclusiones

En este tutorial, hemos aprendido a crear endpoints GET en FastAPI. Los endpoints GET son los más comunes en las APIs REST, y se utilizan para devolver datos al cliente.

Con los conocimientos adquiridos en este tutorial, podrás crear endpoints GET que cumplan con tus necesidades.