Curso de FastAPI: Cambiar el Código de Estado HTTP a un Redireccionamiento utilizando el parámetro status_code 227.

Posted by

En este tutorial, aprenderás cómo cambiar el código de estado HTTP a un redireccionamiento utilizando el parámetro status_code en FastAPI.

FastAPI es un moderno framework web para Python que facilita la creación de APIs rápidas y seguras. Permite crear endpoints de forma sencilla y eficiente, utilizando decoradores para definir las operaciones HTTP que soporta cada endpoint.

En ocasiones, es necesario redirigir al usuario a otra URL en lugar de devolver una respuesta directamente. Para hacer esto en FastAPI, se puede utilizar el parámetro status_code en el decorador de una función de manejo de rutas.

A continuación, te mostraremos un ejemplo de cómo redirigir a un usuario a una URL específica en función de un parámetro de la solicitud.

Primero, crea un archivo app.py con el siguiente código:

<!DOCTYPE html>
<html>
<head>
    <title>Redireccionamiento</title>
</head>
<body>
    <h1>¡Redirección exitosa!</h1>
</body>
</html>

A continuación, importa las bibliotecas necesarias y crea una aplicación FastAPI con una ruta de redireccionamiento en el archivo app.py:

from fastapi import FastAPI, HTTPException

app = FastAPI()

@app.get("/redirect")
async def redirect_to_url(url: str):
    if url == "example":
        return RedirectResponse(url="/redirected", status_code=302)
    else:
        raise HTTPException(status_code=400, detail="URL no válida")

En este código, hemos definido una ruta /redirect que acepta un parámetro url en la solicitud GET. Si el valor de url es "example", la función redirect_to_url devolverá un redireccionamiento con un código de estado 302 (Found) a la URL /redirected. De lo contrario, se lanzará una excepción HTTP con un código de estado 400 (Bad Request) y un mensaje de error.

Para probar la ruta de redireccionamiento, ejecuta la aplicación con uvicorn:

uvicorn app:app --reload

Luego, abre un navegador y navega a http://localhost:8000/redirect?url=example. Deberías ser redirigido a la página http://localhost:8000/redirected con un mensaje "Redirección exitosa".

¡Y eso es todo! Ahora sabes cómo cambiar el código de estado HTTP a un redireccionamiento utilizando el parámetro status_code en FastAPI. ¡Espero que este tutorial te haya sido útil!