Een webwerf benodig 'n ander proxy as die res van jou HTTPS-versoeke. Requests kan daardie keuse in die proxy-woordeboek self uitdruk:

routes = {
    "https://reports.example": "http://reports-proxy.example:8080",
    "https": "http://default-proxy.example:8080",
}
response = requests.get(
    "https://reports.example/monthly",
    proxies=routes,
    timeout=(5, 20),
)
response.raise_for_status()

Die gasheernaam-spesifieke sleutel wen vir daardie bestemming. 'n Ander HTTPS-gasheernaam gebruik die skema-wye inskrywing. Die waardes beskryf die proxy-verbinding, so 'n HTTPS-bestemming kan korrek na 'n HTTP-proxy-URL karteer. Wanneer hierdie toegelate openbare-webwerf-roetes sonder proxy-rekeninge is, kan die HTTP-proxylys kandidate vir daardie waardes lewer; hou elke bestemmingsreël eksplisiet.

Pas 'n gasheernaam, nie 'n hulpbron-URL nie

In Requests 2.32.5 word die spesifieke sleutel uit die bestemming se skema en die ontlede gasheernaam gebou. Dit bevat nie die pad, navraag of poort nie.

Om /monthly by die woordeboeksleutel te voeg, sal die reël nie tot daardie pad beperk nie. Net so is https://reports.example:8443 nie 'n poort-spesifieke sleutel wat deur hierdie keurder erken word nie. Die gasheernaam-reël geld ook wanneer die bestemmings-URL 'n ander poort gebruik.

Daar is geen wildcard-uitbreiding in hierdie opsoek nie. 'n Reël vir reports.example dek nie outomaties 'n subdomein nie. Gebruik 'n eksplisiete roeteringsbesluit buite hierdie eenvoudige woordeboek wanneer die beleid pad-, poort- of agtervoegsel-passing nodig het.

Weet watter terugval volgende kom

Die implementering kontroleer sleutels in hierdie orde: scheme://hostname, scheme, all://hostname, dan all. 'n Skema-wye HTTPS-inskrywing het dus voorrang bo 'n gasheernaam-inskrywing vir alle skemas. Plaas 'n skema-spesifieke gasheernaam-reël eerste in jou ontwerp wanneer dit die bedoelde uitsondering is.

Hou ook rekening met hoe jou Session verstekwaardes en omgewingsafgeleide instellings saamvoeg. Om hierdie twee eksplisiete inskrywings saam met die versoek te stuur, maak hulle bedoelde roetes duidelik, maar definieer nie 'n beleid vir elke ander bestemming-skema nie.

'n Herleiding kan 'n ander gasheernaam invoer, en proxy-keuse is ook op daardie nuwe bestemming van toepassing. Lees die reël as 'n besluit oor elke URL wat versoek word, eerder as 'n permanente roete wat aan die eerste bladsy geheg is.

Verwante artikels