Vamos a desarrollar un ejercicio simple utilizando Python con FastAPI. El objetivo será crear una API para un sistema de libros donde los usuarios puedan agregar y ver libros. Este ejercicio te ayudará a comprender cómo manejar las operaciones básicas de un CRUD (Crear, Leer, Actualizar, Borrar) en FastAPI
Ejercicio: Sistema de Libros con FastAPI
Requisitos:
FastAPI: Un framework moderno y rápido para construir APIs con Python 3.7+.
Uvicorn: Un servidor ASGI ligero para Python.
Descripción del Ejercicio:
Vamos a crear una API que permita a los usuarios:
Agregar un libro: Esto incluirá detalles como el título del libro y el autor.
Listar todos los libros: Ver un listado de todos los libros agregados.
Código:
Primero, instala FastAPI y Uvicorn usando pip:
pip install fastapi uvicorn
Luego, crea un archivo main.py y escribe el siguiente código:
from fastapi import FastAPI
from pydantic import BaseModel
from typing import List
app = FastAPI()
class Book(BaseModel):
title: str
author: str
books = []
@app.post("/books/")
async def add_book(book: Book):
books.append(book)
return book
@app.get("/books/", response_model=List[Book])
async def get_books():
return books
Explicación del Código:
Clase Book: Define el modelo de datos para un libro utilizando Pydantic.
Lista books: Una lista simple para almacenar libros.
Ruta /books/ (POST): Permite a los usuarios agregar un nuevo libro.
Ruta /books/ (GET): Devuelve una lista de todos los libros.
uvicorn main:app --reload
Abre tu navegador y ve a http://127.0.0.1:8000/docs.
Utiliza la interfaz de Swagger UI para probar la API.