Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

436
Vistas
La redirección de FastAPI para la barra inclinada final devuelve un enlace que no es SSL

Nos encontramos con un problema cuando llamamos a un punto final y se produce una redirección debido a que falta una barra diagonal. Como puede ver en la imagen a continuación, cuando se realiza una solicitud a https ://.../notifications, el servidor FastAPI responde con una redirección a http ://...notifications/

Sospecho que es un problema de configuración de la aplicación en lugar de un problema de configuración del servidor. ¿Alguien tiene una idea de cómo resolver este problema?

ejemplo de redirección

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Esto se debe a que su aplicación no confía en los encabezados del proxy inverso que anulan el esquema (el encabezado X-Forwarded-Proto que se pasa cuando maneja una solicitud TLS).

Hay algunas maneras en que podemos arreglar eso:

  • Si está ejecutando la aplicación directamente desde el servidor uvicorn , intente usar el indicador --forwarded-allow-ips '*' .

  • Si está ejecutando gunicorn , también puede establecer la bandera --forwarded-allow-ips="*" .

  • En cualquiera de las aplicaciones, también puede utilizar la variable de entorno FORWARDED_ALLOW_IPS .

Importante: el * debe usarse solo como prueba, ya que hará que su aplicación confíe en los encabezados X-Forwarded-* de cualquier fuente. Le sugiero que lea los documentos de uvicorn y los documentos de gunicorn para obtener un conocimiento más profundo de qué configurar en esta bandera y por qué.

over 4 years ago · Santiago Trujillo Denunciar

0

Experimenté este problema al usar FastAPI con react-admin.

Una solución es cambiar la aplicación FastAPI para que no realice redireccionamientos, sino que trate ambas direcciones URL como puntos finales de API válidos (con y sin barra inclinada).

Puede usar este fragmento escrito por malthunayan para cambiar el comportamiento de APIRouter :

 from typing import Any, Callable from fastapi import APIRouter as FastAPIRouter from fastapi.types import DecoratedCallable class APIRouter(FastAPIRouter): def api_route( self, path: str, *, include_in_schema: bool = True, **kwargs: Any ) -> Callable[[DecoratedCallable], DecoratedCallable]: if path.endswith("/"): path = path[:-1] add_path = super().api_route( path, include_in_schema=include_in_schema, **kwargs ) alternate_path = path + "/" add_alternate_path = super().api_route( alternate_path, include_in_schema=False, **kwargs ) def decorator(func: DecoratedCallable) -> DecoratedCallable: add_alternate_path(func) return add_path(func) return decorator

fuente: https://github.com/tiangolo/fastapi/issues/2060#issuecomment-834868906

(también puede ver otras soluciones similares en este problema de GitHub)


Otra solución es agregar:

 <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

al archivo index.html en la interfaz. Actualizará todas las solicitudes de http a https (también cuando se ejecute localmente, por lo que puede que no sea la mejor solución)

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda