ProxyManager نىڭ ۋاسىتىچىگە ئەۋەتىلىدىغان headers ئۈچۈن ئايرىم proxy_headers پارامېتىرى بار. Basic authentication نى قوبۇل قىلىدىغان proxy ئۈچۈن:

import urllib3

proxy_headers = urllib3.make_headers(
    proxy_basic_auth=f'{proxy_user}:{proxy_password}'
)
with urllib3.ProxyManager(
    'http://proxy.example:8080',
    proxy_headers=proxy_headers,
    timeout=urllib3.Timeout(connect=5, read=10),
) as http:
    response = http.request('GET', 'https://service.example/data')
    print(response.status)

ئادەتتىكى HTTP destination ئۈچۈن، بۇ headers ئەۋەتىلگەن تەلەپ بىلەن بىرگە proxy غا بارىدۇ. CONNECT نى ئىشلىتىدىغان HTTPS destination ئۈچۈن، ئۇلار ھەر بىر شىفىرلانغان تور بېكەت تەلىپىگە ئەمەس، tunnel تەييارلاشقا تەۋە.

ئادەتتىكى headers پارامېتىرى destination تەلەپ headers نى تەسۋىرلەيدۇ. بۇ proxy authentication باشقا قوبۇل قىلغۇچىغا تەۋە. proxy نىڭ ھېساباتىنى ئۇ يەرگە قويۇش ئىلگىرىكى CONNECT ئالماشتۇرۇشنى سەپلەش بىلەن باراۋەر ئەمەس.

make_headers Basic header قىممىتىنى قۇرىدۇ. ئۇ NTLM سۆھبىتىنى ئېلىپ بارمايدۇ، قوللايدىغان scheme نى ئۆزلۈكىدىن تاللىمايدۇ ۋە proxy نىڭ بۇ ھېساباتنى قوبۇل قىلىدىغانلىقىنى ئىسپاتلىمايدۇ.

TLS listener غا ئىگە proxy ئايرىم proxy TLS context نى قوشىدۇ. يۇقىرىدىكى http:// endpoint ئەتەيلىك بىلەن HTTPS destination نى tunnel ئارقىلىق ئېلىپ ماڭىدىغان ئادەتتىكى HTTP listener نى تەسۋىرلەيدۇ.

مۇناسىۋەتلىك ماقالىلەر