Redirecciones de Python Requests: None frente a valores de proxy vacíos
Mantenga explícita la intención de enrutamiento directo entre redirecciones en lugar de confiar en un valor None que elimina una entrada del mapa.
Si una petición directa llega a una redirección y el siguiente intercambio falla en un proxy, examine la transición. Requests reconstruye la configuración relacionada con el proxy para las redirecciones y puede volver a consultar el entorno cuando la Session confía en él.
| Valor del mapa | Qué ocurre durante la fusión |
|---|---|
None | La clave se elimina, dejando una entrada ausente que una pasada posterior puede rellenar desde el entorno. |
| Una cadena vacía | El valor explícito permanece; puede preservar la intención de enrutamiento directo para ese esquema. |
Para una Session existente, proporcione los esquemas de destino implicados en la operación directa:
response = session.get(
'https://example.com/start',
proxies={'http': '', 'https': ''},
timeout=15,
)Revise los mapas adicionales específicos del host y los adaptadores personalizados si la aplicación los proporciona. Esta entrada de enrutamiento no anula todas las políticas posibles que implementan esos componentes.
Conserve cada URL en el diagnóstico
Registre la URL original, cada ubicación de redirección, el estado de la respuesta y la etapa que falla. El cambio de HTTP a HTTPS modifica la clave de esquema pertinente; un host nuevo puede quedar fuera de la regla de omisión del primer host. Un informe que solo contenga la URL inicial oculta ambas transiciones.
Observar una respuesta con el seguimiento de redirecciones desactivado puede exponer el límite. Examine su ubicación como dato antes de decidir solicitarla; no envíe sin criterio las credenciales originales a un destino nuevo.
Una Session dedicada con el descubrimiento de entorno desactivado es otra opción cuando la aplicación posee deliberadamente todas las entradas de enrutamiento y confianza. Eso también afecta al descubrimiento automático de credenciales y CA, así que elíjalo como política de la aplicación y no como una reparación rutinaria de redirecciones.