Vienai vietnei nepieciešams cits starpniekserveris nekā pārējiem jūsu HTTPS pieprasījumiem. Requests var izteikt šo izvēli pašā starpniekserveru vārdnīcā:

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()

Šim mērķim uzvar resursdatora nosaukumam raksturīgā atslēga. Cits HTTPS resursdatora nosaukums izmanto shēmas līmeņa ierakstu. Vērtības apraksta starpniekservera savienojumu, tāpēc HTTPS mērķis var pareizi kartēties uz HTTP starpniekservera URL. Ja šie ir atļauti publisku vietņu maršruti bez starpniekservera kontiem, HTTP starpniekserveru saraksts var nodrošināt kandidātus šīm vērtībām; saglabājiet katru mērķa noteikumu skaidru.

Saskaņojiet resursdatora nosaukumu, nevis resursa URL

Requests 2.32.5 versijā konkrētā atslēga tiek veidota no mērķa shēmas un parsētā resursdatora nosaukuma. Tā nesatur ceļu, vaicājumu vai portu.

Pievienojot /monthly vārdnīcas atslēgai, noteikums netiks ierobežots ar šo ceļu. Tāpat https://reports.example:8443 nav portam raksturīga atslēga, ko atpazītu šis atlasītājs. Resursdatora nosaukuma noteikums attiecas arī tad, ja mērķa URL izmanto citu portu.

Šajā meklēšanā nav aizstājējzīmju paplašināšanas. Noteikums reports.example neaptver apakšdomēnu automātiski. Ja politikai nepieciešama ceļa, porta vai sufiksa atbilstība, izmantojiet skaidru maršrutēšanas lēmumu ārpus šīs vienkāršās vārdnīcas.

Ziniet, kurš rezerves variants nāks nākamais

Ieviešana pārbauda atslēgas šādā secībā: scheme://hostname, scheme, all://hostname, pēc tam all. Tāpēc visai shēmai derīgs HTTPS ieraksts ir augstāks par resursdatora nosaukuma ierakstu visām shēmām. Ja tas ir paredzētais izņēmums, savā dizainā vispirms lieciet shēmai raksturīgu resursdatora nosaukuma noteikumu.

Ņemiet vērā arī to, kā jūsu Session apvieno noklusējumus un no vides iegūtos iestatījumus. Šo divu skaidro ierakstu nosūtīšana kopā ar pieprasījumu padara to paredzētos maršrutus skaidrus, taču nenosaka politiku katrai citai mērķa shēmai.

Pāradresācija var ieviest citu resursdatora nosaukumu, un starpniekservera izvēle ir svarīga arī šim jaunajam mērķim. Lasiet noteikumu kā lēmumu par katru pieprasīto URL, nevis kā pastāvīgu maršrutu, kas piesaistīts pirmajai lapai.

Saistītie raksti