אויסקלײַבן HTTPX־פּראָקסי־רוטעס מיט proxy און mounts
ניצט HTTPX proxy און טראַנספּאָרט־מאָנטירונגען מיט דער ריכטיקער סכעמע, קלאָרן סבֿיבֿה־אויפֿפֿיר און באַזונדערע פֿאַרבינדונג־ און לייענגרענעצן.
ניצט proxy= ווען איין ענדפּונקט דאַרף באַהאַנדלען די בקשות פֿונעם קליענט. ניצט mounts= ווען די ציל־סכעמעס דאַרפֿן אַנדערע רוטעס. די בײַשפּילן ניצן יענע HTTPX־אינטערפֿייסן; אַ פּראָיעקט מיט דער עלטערער API proxies= דאַרף אַ קאָנפֿיגוראַציע פֿאַר יענער ווערסיע.
איין ענדפּונקט
import httpx
timeout = httpx.Timeout(15.0, connect=5.0)
with httpx.Client(
proxy="http://127.0.0.1:8080",
trust_env=False,
timeout=timeout,
) as client:
response = client.get("https://example.com/")
response.raise_for_status()
print(response.status_code)
בײַט דעם לאָקאַלן צוהערער מיט אַן אַרבעטנדיקן HTTP־פּראָקסי. אַ קאַנדידאַט פֿון דער ליסטע פֿון HTTP־פּראָקסיס דאַרף נאָך אַלץ אַ טעסט מיט אײַער ציל. אַן HTTPS־ציל קען ניצן דעם http://־ענדפּונקט דורך CONNECT. טוישן די סכעמע אויף https:// בעט TLS צום פּראָקסי אַליין, וואָס צוהערער און קליענט מוזן שטיצן.
באַזונדערע רוטעס לויט דער ציל־סכעמע
import httpx
mounts = {
"http://": httpx.HTTPTransport(
proxy="http://127.0.0.1:8080",
trust_env=False,
),
"https://": httpx.HTTPTransport(
proxy="http://127.0.0.1:8081",
trust_env=False,
),
}
with httpx.Client(
mounts=mounts,
trust_env=False,
timeout=httpx.Timeout(15.0, connect=5.0),
) as client:
response = client.get("https://example.com/")
response.raise_for_status()
print(response.status_code)
מאָנטירונגס־שליסלען פּאַסן צו ציל־URLן. HTTP־צילן קלײַבן דאָ פּאָרט 8080, HTTPS־צילן פּאָרט 8081. דער פּראָקסי־ווערט באַשרײַבט דעם אייגענעם פּראָטאָקאָל פֿונעם צוהערער, דעריבער קען די HTTPS־מאָנטירונג ריכטיק אַרײַננעמען אַן http://־פּראָקסי. שטעלט אַרײַן אײַערע ענדפּונקטן און קאָנטראָלירט ביידע ציל־סכעמעס.
ביידע רעצעפּטן שטעלן trust_env=False אויפֿן קליענט און, וווּ זיי ווערן געגעבן, אויף די טראַנספּאָרטן. אַנדערש לייענט HTTPX לויטן פֿעליק פּראָקסי־ און סערטיפֿיקאַט־סבֿיבֿה־וואַריאַבלען. אויב אײַער אויפֿשטעלונג איז אויף זיי אָפּהענגיק, לאָזט אַנטדעקונג אָן אָדער שטעלט רוטעס און צוטרוי בפֿירוש. פֿאַר פּריוואַטן צוטרוי ניצט דעם TLS־קאָנטעקסט און CA־קאָנפֿיגוראַציע פֿון אײַער HTTPX־ווערסיע; לאָזט די ציל־וועריפֿיקאַציע אָן. צוטרוי צום HTTPS־פּראָקסי קען זײַן באַזונדער פֿונעם ציל־צוטרוי.
httpx.Timeout(15.0, connect=5.0) איבערשרײַבט דעם פֿאַרבינדונג־טײַמאַוט און גיט די אַנדערע קאָנפֿיגורירטע טיילן דעם פֿעליק־ווערט. לייענען, שרײַבן און וואַרטן אויפֿן פּול האָבן באַזונדערע גרענעצן; פֿופֿצן סעקונדעס זײַנען נישט קיין גאַנצער טערמין פֿאַר פֿאַרגאַנגענער צײַט. אַ פּול־טײַמאַוט קען מיינען אַז אַנדערע אַרבעט האַלט די פֿאַראַנענע פֿאַרבינדונגען. פֿאַרמאַכט קליענטן און שטראָם־ענטפֿערס ריכטיק איידער איר האַלט דאָס פֿאַר אַ באַווײַז אַז דער פּראָקסי איז נישט דערגרייכבאַר.