Chagua proksi ya Requests kwa tovuti moja
Ipe jina moja la mwenyeji lengwa proksi tofauti katika Requests na uelewe mipaka ya ulinganishaji na mpangilio wa akiba.
Tovuti moja inahitaji proksi tofauti na maombi yako mengine ya HTTPS. Requests inaweza kuonyesha chaguo hilo ndani ya kamusi ya proksi yenyewe:
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()
Kwa lengo hilo, ufunguo mahususi wa jina la mwenyeji ndio unashinda. Jina lingine la mwenyeji la HTTPS linatumia ingizo la mpango mzima. Thamani zinaeleza muunganisho wa proksi, kwa hivyo lengo la HTTPS linaweza kuoanishwa kwa usahihi na URL ya proksi ya HTTP. Wakati haya ni njia zilizoruhusiwa za tovuti za umma bila akaunti za proksi, orodha ya proksi za HTTP inaweza kutoa watahiniwa kwa thamani hizo; weka kila kanuni ya lengo wazi.
Linganisha jina la mwenyeji, sio URL ya rasilimali
Katika Requests 2.32.5, ufunguo mahususi hujengwa kutoka mpango wa lengo na jina la mwenyeji lililochambuliwa. Haina njia, hoja au mlango.
Kuongeza /monthly kwenye ufunguo wa kamusi hakutazuia kanuni kwa njia hiyo. Vile vile, https://reports.example:8443 sio ufunguo mahususi wa mlango unaotambuliwa na kichaguzi hiki. Kanuni ya jina la mwenyeji inatumika pia wakati URL ya lengo inatumia mlango mwingine.
Hakuna upanuzi wa herufi za kadi katika utafutaji huu. Kanuni ya reports.example haijumuishi kikoa kidogo kiotomatiki. Tumia uamuzi wazi wa uelekezaji nje ya kamusi hii rahisi wakati sera inahitaji ulinganishaji wa njia, mlango au kiambishi.
Jua ni akiba ipi inayofuata
Utekelezaji hukagua funguo kwa mpangilio huu: scheme://hostname, scheme, all://hostname, kisha all. Kwa hivyo ingizo la HTTPS la mpango mzima lina kipaumbele juu ya ingizo la jina la mwenyeji kwa mpango wote. Weka kanuni ya jina la mwenyeji mahususi kwa mpango mbele katika muundo wako wakati huo ndio ubaguzi unaokusudiwa.
Fikiria pia jinsi Session yako inavyochanganya chaguo-msingi na mipangilio inayotokana na mazingira. Kupitisha ingizo hizi mbili wazi pamoja na ombi hufanya njia zao zilizokusudiwa ziwe wazi, lakini haina kufafanua sera kwa mpango wowote mwingine wa lengo.
Uelekezaji upya unaweza kuleta jina lingine la mwenyeji, na uchaguzi wa proksi unahusika pia kwa lengo hilo jipya. Soma kanuni kama uamuzi kuhusu kila URL inayoombwa, sio kama njia ya kudumu iliyounganishwa na ukurasa wa kwanza.