Python Requestsi ümbersuunamised: None versus tühjad proxy väärtused
Hoidke otsese marsruutimise kavatsus ümbersuunamiste lõikes selgesõnaline, selle asemel et toetuda None väärtusele, mis eemaldab vastenduskirje.
Kui otsene päring jõuab ümbersuunamiseni ja järgmine vahetus ebaõnnestub proxy juures, uurige üleminekut. Requests ehitab ümbersuunamiste jaoks proxyga seotud sätted uuesti üles ja võib keskkonda uuesti vaadata, kui Session seda usaldab.
| Vastenduse väärtus | Mis toimub ühendamise ajal |
|---|---|
None | Võti eemaldatakse, jättes puuduva kirje, mille hilisem käik võib keskkonnast täita. |
| Tühi string | Selgesõnaline väärtus jääb alles; see võib selle skeemi jaoks säilitada otsese marsruutimise kavatsuse. |
Olemasoleva Sessioni puhul esitage otseses toimingus osalevad sihtskeemid:
response = session.get(
'https://example.com/start',
proxies={'http': '', 'https': ''},
timeout=15,
)Kontrollige täiendavaid hostipõhiseid vastendusi ja kohandatud adaptereid, kui rakendus neid pakub. See marsruutimissisend ei tühista kõiki võimalikke poliitikaid, mida need komponendid rakendavad.
Hoidke iga URL diagnoosis
Kirjutage üles algne URL, iga ümbersuunamise asukoht, vastuse olek ja ebaõnnestuv etapp. Üleminek HTTP-lt HTTPS-ile muudab asjakohast skeemivõtit; uus host võib jääda esimese hosti möödasõidureeglist välja. Ainult algset URL-i sisaldav aruanne varjab mõlemat üleminekut.
Ühe vastuse jälgimine ümbersuunamiste järgimise väljalülitamisega võib piiri paljastada. Uurige selle asukohta andmetena enne, kui otsustate seda taotleda; ärge saatke algseid volitusi valimatult uude sihtkohta.
Eraldi Session, millel on keskkonna avastamine välja lülitatud, on teine võimalus, kui rakendus omab teadlikult kõiki marsruutimis- ja usaldussisendeid. See mõjutab ka automaatset volituste ja CA avastamist, seega valige see rakenduse poliitikana, mitte tavapärase ümbersuunamise parandusena.