Siųskite tik vieną hostą per HTTPX proxy
Priskirkite proxy transportą pasirinktam hostui, o įprastą kliento atsarginį maršrutą palikite tiesioginį.
Pasirinktam hostui suteikite proxy transportą, o likusiam klientui aiškiai nurodytą tiesioginį transportą:
import httpx
direct = httpx.HTTPTransport(trust_env=False)
proxied = httpx.HTTPTransport(
proxy="http://203.0.113.10:8080",
trust_env=False,
)
with httpx.Client(
transport=direct,
mounts={"all://example.com": proxied},
trust_env=False,
timeout=15,
) as client:
response = client.get("https://example.com/")
print(response.status_code)
other = client.get("https://example.org/")
print(other.status_code)
Dokumentacijos adresą pakeiskite numatytu HTTP tašku iš paslaugos arba HTTP tarpinių serverių sąrašo. Čia example.com naudoja priskyrimą, o example.org tiesioginį numatytąjį transportą. Abu iškvietimai svarbūs: vien proxy hosto sėkmė nepatikrina atsarginio maršruto.
| Atitikties detalė | Poveikis |
|---|---|
all://example.com | Tikslus hostas visoms tikslo schemoms. |
| Subdomenas | Atskiras pasirinkimas; sąmoningai naudokite palaikomą pakaitos simbolį, jei ir jis turi atitikti. |
| Kelias | Priskyrimai renkasi schemos, hosto ir neprivalomo prievado šablonus, ne URL kelius. |
| Peradresavimas į kitą hostą | Kai peradresavimų sekimas įjungtas, naujas URL vėl derinamas ir gali naudoti tiesioginį atsarginį maršrutą. |
Pavyzdys išjungia aplinkos aptikimą kliente ir abiejuose transportuose. Kita plati proxy taisyklė ar tinkantis priskyrimas gali pakeisti rezultatą pritaikant. Jei diegimas priklauso nuo CA konfigūracijos iš aplinkos, tą pasitikėjimą pateikite aiškiai arba išlaikykite tinkamą aptikimo politiką, kad neprarastumėte tyliai.
Nereikia keisti viso kompiuterio proxy. Maršruto patikrose laikykite ir numatytą proxy hostą, ir sąmoningai pasirinktą atsarginį hostą.