ProxyManager ima zaseban argument proxy_headers za zaglavlja koja se šalju posredniku. Za proxy koji prihvata Basic autentifikaciju:

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)

Za obično HTTP odredište ta zaglavlja putuju s proslijeđenim zahtjevom do proxyja. Za HTTPS odredište preko CONNECT ona pripadaju postavljanju tunela, a ne svakom zahtjevu prema šifriranoj stranici.

Obični argument headers opisuje zaglavlja zahtjeva prema odredištu. Ova proxy autentifikacija pripada drugom primaocu. Stavljanje proxy računa tamo nije isto kao konfigurisanje ranije CONNECT razmjene.

make_headers gradi vrijednost Basic zaglavlja. Ne pregovara NTLM, ne bira automatski podržanu šemu i ne dokazuje da proxy prihvata taj račun.

Proxy s TLS osluškivačem dodaje zaseban proxy TLS kontekst. Gore navedeni http:// endpoint namjerno opisuje običan HTTP osluškivač koji nosi HTTPS odredište kroz tunel.

Povezani članci