ProxyManager ima ločen argument proxy_headers za glave, poslane posredniku. Za proxy, ki sprejema preverjanje Basic:

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)

Pri običajnem cilju HTTP te glave potujejo s posredovano zahtevo do proxyja. Pri cilju HTTPS prek CONNECT pripadajo nastavitvi tunela, ne pa vsaki šifrirani zahtevi do spletnega mesta.

Običajni argument headers opisuje glave zahteve do cilja. To preverjanje proxyja pripada drugemu prejemniku. Namestitev računa proxyja tja ni enako kot konfiguriranje prejšnje izmenjave CONNECT.

make_headers sestavi vrednost glave Basic. Ne pogaja se o NTLM, ne izbere samodejno podprte sheme in ne dokazuje, da proxy sprejema ta račun.

Proxy s poslušalcem TLS doda ločen kontekst TLS proxyja. Zgornja končna točka http:// namerno opisuje običajnega poslušalca HTTP, ki prenaša cilj HTTPS skozi tunel.

Sorodni članki