urllib3 ProxyManager: Basic-Anmeldedaten an proxy_headers schécken
Stellt Basic-Proxy-Anmeldedaten iwwer ProxyManager.proxy_headers bereit, sou datt se während HTTPS CONNECT verfügbar sinn, ouni Zil-Header ze ginn.
ProxyManager huet en eegent proxy_headers-Argument fir Header, déi un den Intermédiaire geschéckt ginn. Fir e Proxy, deen Basic-Authentifikatioun akzeptéiert:
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)
Bei engem einfachen HTTP-Zil reese dës Header mat der weidergeleet Ufro zum Proxy. Bei engem HTTPS-Zil iwwer CONNECT gehéieren se zum Tunnelsopbau an net zu all verschlësselter Websäit-Ufro.
D'gewéinlecht headers-Argument beschreift d'Ufro-Header fir d'Zil. Dës Proxy-Authentifikatioun gehéiert zu engem aneren Empfänger. De Proxy-Kont do ze setzen ass net d'selwecht wéi de fréieren CONNECT-Austausch ze konfiguréieren.
make_headers baut de Wäert vum Basic-Header. Et handelt net iwwer NTLM, wielt net automatesch en ënnerstëtzt Schema aus a beweist net, datt de Proxy dee Kont akzeptéiert.
E Proxy mat engem TLS-Listener füügt en eegene Proxy-TLS-Kontext derbäi. Den uewe genannte http://-Endpunkt beschreift bewosst en normale HTTP-Listener, deen en HTTPS-Zil duerch en Tunnel dréit.