Mga Redirect ng Python Requests: None kumpara sa walang-lamang proxy values
Panatilihing tahasan ang layunin ng direktang pagruruta sa mga redirect sa halip na umasa sa halagang None na nag-aalis ng entry sa mapping.
Kung ang direktang kahilingan ay umabot sa isang redirect at ang susunod na palitan ay nabigo sa isang proxy, suriin ang transisyon. Muling itinatayo ng Requests ang mga setting na kaugnay ng proxy para sa mga redirect at maaaring muling kumonsulta sa environment kapag pinagkakatiwalaan ito ng Session.
| Halaga ng mapping | Ano ang nangyayari sa pag-merge |
|---|---|
None | Inaalis ang key, na nag-iiwan ng nawawalang entry na maaaring punan ng susunod na pass mula sa environment. |
| Isang walang-lamang string | Nananatili ang tahasang halaga; mapapanatili nito ang layunin ng direktang pagruruta para sa scheme na iyon. |
Para sa umiiral na Session, ibigay ang mga scheme ng destinasyon na kasangkot sa direktang operasyon:
response = session.get(
'https://example.com/start',
proxies={'http': '', 'https': ''},
timeout=15,
)Suriin ang mga karagdagang mapping na partikular sa host at mga custom na adapter kung ibinibigay ng aplikasyon. Hindi nilalampasan ng routing input na ito ang bawat posibleng patakaran na ipinapatupad ng mga bahaging iyon.
Panatilihin ang bawat URL sa diagnosis
Itala ang orihinal na URL, bawat lokasyon ng redirect, status ng tugon at yugtong nabibigo. Binabago ng HTTP-to-HTTPS ang kaugnay na scheme key; ang bagong host ay maaaring mahulog sa labas ng bypass rule ng unang host. Ang ulat na naglalaman lamang ng paunang URL ay nagtatago ng dalawang transisyon.
Ang pagmamasid sa isang tugon na may patay na pagsubaybay sa redirect ay maaaring maglantad ng hangganan. Suriin ang lokasyon nito bilang data bago magpasyang hilingin ito; huwag ipadala nang walang pagtatangi ang orihinal na mga kredensyal sa bagong destinasyon.
Ang dedikadong Session na may patay na pagtuklas ng environment ay isa pang opsyon kapag sadyang pagmamay-ari ng aplikasyon ang lahat ng routing at trust input. Naapektuhan din nito ang automatic na pagtuklas ng kredensyal at CA, kaya piliin ito bilang patakaran ng aplikasyon at hindi bilang karaniwang pagkumpuni ng redirect.