Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

440
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda