Redireccions de Python Requests: None enfront de valors proxy buits
Manteniu explícita la intenció d'encaminament directe durant les redireccions en lloc de confiar en un valor None que elimina una entrada del mapa.
Si una petició directa arriba a una redirecció i l'intercanvi següent falla en un proxy, examineu la transició. Requests reconstrueix la configuració relacionada amb el proxy per a les redireccions i pot tornar a consultar l'entorn quan la Session hi confia.
| Valor del mapa | Què passa durant la fusió |
|---|---|
None | La clau s'elimina i queda una entrada absent que una passada posterior pot omplir des de l'entorn. |
| Una cadena buida | El valor explícit es manté; pot preservar la intenció d'encaminament directe per a aquest esquema. |
Per a una Session existent, proporcioneu els esquemes de destinació implicats en l'operació directa:
response = session.get(
'https://example.com/start',
proxies={'http': '', 'https': ''},
timeout=15,
)Reviseu els mapes addicionals específics de l'amfitrió i els adaptadors personalitzats si l'aplicació els proporciona. Aquesta entrada d'encaminament no anul·la totes les polítiques possibles que implementen aquests components.
Conserveu cada URL al diagnòstic
Registreu l'URL original, cada ubicació de redirecció, l'estat de la resposta i l'etapa que falla. El pas d'HTTP a HTTPS canvia la clau d'esquema pertinent; un amfitrió nou pot quedar fora de la regla d'exempció del primer amfitrió. Un informe que només contingui l'URL inicial amaga les dues transicions.
Observar una resposta amb el seguiment de redireccions desactivat pot exposar la frontera. Examineu-ne la ubicació com a dada abans de decidir sol·licitar-la; no envieu indiscriminadament les credencials originals a una destinació nova.
Una Session dedicada amb el descobriment d'entorn desactivat és una altra opció quan l'aplicació posseeix deliberadament totes les entrades d'encaminament i de confiança. Això també afecta el descobriment automàtic de credencials i CA, així que trieu-ho com a política de l'aplicació i no com a reparació rutinària de redireccions.