====== FastAPI ======
Luego de instalar Python para instalar FastAPI y Uvicorn (este último necesario para dar el servicio web).
pip install fastapi uvicorn
Para iniciar de forma mínima dando un mensaje simple, se crea una carpeta como proyecto y un archivo app.py:
from fastapi import Fastapi
app = Fastapi()
@app.get("/")
def root():
return {"Hola":"Mundo"}
para ejecutar el servidor con powershell:
uvicorn main:app --reload
otra forma es ejecutar uvicorn desde el mismo código agregando en el código python:
if __name__ = "__main__"
import uvicorn
uvicorn.run(app, host="0.0.0.0", por=8000)
para ver la ws:
para ver la documentación:
/docs#
===== routes =====
# url: localhost/
@app.get("/")
# url: localhost/item
@app.get("/item")
===== Parametros =====
# url: localhost/item?var=hola
@app.get("/item")
def cargar_item( var1: str)
return var1
# url: localhost/item/hola
@app.get("/item/{var1}")
def cargar_item( var1: str )
return var1
===== Modelo de JSON ====
* [[informatica:lenguajes_de_programacion:python:pydantic_numpydantic|Pydantic y Numpydantic]]
from pydantic import BaseModel
class Item(BaseModel):
text: str = None
booleano: bool = true
# {text:None, booleano:true}
==== Modelo de Datos Entrada y Salida JSON ====
from fastapi import FastAPI
from pydantic import BaseModel
class Item(BaseModel):
text:str
booleano: bool=False
app = FastAPI()
@app.get("/")
def root():
return {"hola":"mundo"}
@app.post("/item/")
def create_items(var1: Item):
return var1
===== Enlaces =====
* [[https://www.youtube.com/shorts/Z1XHeMgpg8A|FastAPI in 30 seconds]]
* [[https://www.youtube.com/watch?v=riijt-xcqYI|REST API con Python, Flask y PostgreSQL | Crea y Prueba tu REST API (GET, POST, PUT, DELETE) ✅]]
* [[https://www.youtube.com/watch?v=iWS9ogMPOI0|Python FastAPI Tutorial: Build a REST API in 15 Minutes]]
* [[https://www.youtube.com/watch?v=34cqrIp5ANg|FastAPI Python Tutorial - Learn How to Build a REST API]]
* [[https://www.youtube.com/watch?v=lWsGhG6N_1E|How To Create a Python API With FastAPI - Full Tutorial]]
Autenticación:
* [[https://www.youtube.com/watch?v=jOfN4jmOkcI|Protege tu API con FastAPI: Autenticación Segura, JWT y Roles 👨💻🛡️ [Tutorial Completo]]]
Conexion a DB:
* [[https://www.youtube.com/watch?v=398DuQbQJq0|How to build a FastAPI app with PostgreSQL]]