Прызначце абранаму хосту проксі-транспарт, а астатняму кліенту яўна задайце прамы транспарт:

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)

Замяніце дакументацыйны адрас патрэбным HTTP-пунктам свайго сэрвісу або са спіса HTTP-проксі. Тут example.com выкарыстоўвае мантаванне, а example.org — стандартны прамы варыянт. Абодва выклікі важныя: поспех толькі на проксі-хосце не правярае рэзервовы маршрут.

Умова супастаўленняВынік
all://example.comДакладны хост для ўсіх схем прызначэння.
ПаддаменАсобны выбар; свядома выкарыстоўвайце падтрыманы шаблон, калі ён таксама мусіць супадаць.
ШляхМантаванні выбіраюць шаблоны схемы, хоста і неабавязковага порта, а не URL-шляхі.
Перанакіраванне на іншы хостКалі пераход па перанакіраваннях уключаны, супастаўляецца новы URL, які можа выкарыстаць прамы рэзервовы маршрут.

Прыклад адключае чытанне асяроддзя ў кліента і абодвух транспартаў. Іншае шырокае правіла проксі ці адпаведнае мантаванне можа змяніць вынік пры адаптацыі. Калі разгортванне залежыць ад CA-налад асяроддзя, задайце гэты давер яўна або захавайце прыдатную палітыку чытання, каб не страціць яго незаўважна.

Мяняць проксі ўсёй машыны не трэба. У праверках маршруту захоўвайце патрэбны проксі-хост і адмыслова абраны рэзервовы хост.

Падобныя артыкулы