Evilnapsis

Programming, Hacking and More

Python

[Python] Como usar FastAPI

FastAPI es un framework para construir y desarrollar APIs usando el lenguaje de programacion Python.

Algunas caracteristicas clave de FastAPI.

  1. FastAPI esta construido sobre Starlette, el cual esta desarrollado para alto rendimiento y manejo asincrono. Aprovecha las capacidades de python usando asyc y await para manejar procesos concurrente eficientemente.
  2. Se usan Anotaciones en python para definir el tipo de dato esperado en el cuerpo y la respuesta. Estas anotaciones son validadas automaticamente y usadas para serializacion y deserializacion de datos.
  3. Generacion Automatica de Esquema OpenAPI y JSON.FastAPI genera automaticamente una documentacion interactiva basada en las anotaciones. Esta documentacion incluye ejemplos de solicitud y respuestas, haciendo facil entender y testear las API.
  4. FastAPI soporta inyeccion de dependencias permitiendo el manejo rapido e inyeccion de dependencias en tus endpoints.
  5. FastAPI soporta comunicacion por websockets fuera de la caja, haciendolo ideal para aplicaciones en tiempo real y sistemas de chat.
  6. FastAPI esta diseñado para ser integrado facilmente con otros frameworks y librerias de python.

Instalacion de FastAPI

Para instalar FastAPI vamos usar un comando de pip install.

Para que FastAPI funcione correctamente es necesario usar uvicorn el cual es un servidor web implementado en python, este se instalara automaticamente con FastAPI usando el siguiente comando:

pip install fastapi[all]

Esperamos que termine la instalacion y listo ya tenemos FastAPI instalado.

Codigo

Ahora en una carpeta vamos a crear un script en python con el nombre que ustdes quieran, recomendable llamarlo main.py la extencion .py la tiene que poner si o si.

En el codigo del archivo main.py vamos a escribir lo siguiente:

# importamos el modulo FastAPI
from fastapi import FastAPI

#creamos una instancia del modulo FastAPI
app = FastAPI()

# para la funcion root esta se va a ejecutar cuando en el navegador escribamos / o la raiz
@app.get("/")
async def root():
    return {"mensaje":"Hola, Mundo!"} # retornamos un valor JSON

Con ese codigo vamos a mostrar el mensaje Hola mundo en formato JSON en el navegador.

Ejecucion del Codigo

Para ejecutar el codigo vamos a usar el comando uvicorn primero vamos a entrar a la carpeta donde tenemos el script, desde una terminal obviamente.

Dentro de la carpeta vamos a ejecutar el siguiente comando:

uvicorn main:app

Este comando ejecuta la aplicacion como puedes ver se usa la palabra main:app para ello tu script se debe llamar main.py, por ejemplo si tu script se llama programa.py entonces debes cambiar main:app por programa:app

Si quieres que cuando modifiques el script se ejecute de nuevo el comando para ejecutar el servidor entonces usa el comando.

uvicorn main:app --reload

Para ver los resultados en el navegador tenemos que escribit http://127.0.0.1:8000

Es decir el servidor queda escuchando en el puerto 8000

Y listo con esto espero puedan empezar a hacer uso de FastAPI.

Agustin Ramos

Desarrollador de Software

Leave a Reply