Python Requests preusmeravanja: None naspram praznih proxy vrednosti
Držite nameru direktnog usmeravanja eksplicitnom kroz preusmeravanja umesto oslanjanja na vrednost None koja uklanja unos mapiranja.
Ako direktan zahtev dosegne preusmeravanje, a sledeća razmena ne uspe na proxyju, pregledajte prelaz. Requests ponovo gradi postavke vezane za proxy za preusmeravanja i može ponovo konsultovati okruženje kada mu Session veruje.
| Vrednost mapiranja | Šta se dešava tokom spajanja |
|---|---|
None | Ključ se uklanja, ostavljajući nedostajući unos koji kasniji prolaz može popuniti iz okruženja. |
| Prazan niz | Eksplicitna vrednost ostaje; može sačuvati nameru direktnog usmeravanja za tu šemu. |
Za postojeći Session navedite odredišne šeme uključene u direktnu operaciju:
response = session.get(
'https://example.com/start',
proxies={'http': '', 'https': ''},
timeout=15,
)Proverite dodatna mapiranja specifična za host i prilagođene adaptere ako ih aplikacija pruža. Ovaj ulaz za usmeravanje ne nadjačava svaku moguću politiku koju te komponente primenjuju.
Zadržite svaki URL u dijagnostici
Zabeležite izvorni URL, svaku lokaciju preusmeravanja, status odgovora i fazu koja ne uspeva. Prelaz sa HTTP na HTTPS menja relevantni ključ šeme; novi host može pasti izvan pravila zaobilaženja prvog hosta. Izveštaj koji sadrži samo početni URL skriva oba prelaza.
Posmatranje jednog odgovora sa isključenim praćenjem preusmeravanja može otkriti granicu. Pregledajte njegovu lokaciju kao podatak pre nego što odlučite da je zatražite; ne šaljite bezrazložno izvorne akreditive na novo odredište.
Namenski Session sa isključenim otkrivanjem okruženja još je jedna opcija kada aplikacija namerno poseduje sve ulaze usmeravanja i poverenja. To takođe utiče na automatsko otkrivanje akreditiva i CA, zato ga odaberite kao politiku aplikacije, a ne kao rutinsku popravku preusmeravanja.