5. Devolver JSON (mini API sin BD)

5.1. Código completo

from flask import Flask
from flask import jsonify

app = Flask(__name__)

@app.route("/")
def inicio():
    return "¡Hola Flask! Mi primera aplicación."

@app.route("/saludo")
def saludo():
    return "Hola a todos desde Flask!"

@app.route("/usuario/<nombre>")
def usuario(nombre):
    return f"Bienvenido, {nombre}!"

@app.route("/suma/<int:a>/<int:b>")
def suma(a, b):
    return f"La suma es {a + b}"


productos = [
    {"id": 1, "nombre": "Monitor", "precio": 149.99},
    {"id": 2, "nombre": "Teclado", "precio": 29.99},
]

@app.route("/api/productos")
def obtener_productos():
    return jsonify({"productos": productos})

@app.route("/api/productos/<int:id>")
def obtener_producto(id):
    producto = next((p for p in productos if p["id"] == id), None)
    if producto:
        return jsonify(producto)
    return jsonify({"error": "Producto no encontrado"}), 404

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