Ge den valda värden en proxytransport och resten av klienten en explicit direkt 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)

Ersätt dokumentationsadressen med önskad HTTP-ändpunkt från tjänsten eller listan med HTTP-proxyer. Här använder example.com monteringen och example.org den direkta standarden. Båda anropen behövs: framgång på bara proxyvärden verifierar inte reservvägen.

MatchningsdetaljEffekt
all://example.comDen exakta värden för alla destinationsscheman.
En underdomänEtt separat val; använd avsiktligt ett understött jokertecken om den också ska matcha.
En sökvägMonteringar väljer schema-, värd- och valfria portmönster, inte URL-sökvägar.
En omdirigering till en annan värdNär följning av omdirigeringar är aktiverad matchas den nya URL:en och kan använda den direkta reservvägen.

Exemplet stänger av miljöupptäckt på klienten och båda transporterna. En annan bred proxyregel eller matchande montering kan ändra resultatet vid anpassning. Om driftsättningen bygger på CA-konfiguration från miljön, ange förtroendet explicit eller behåll lämplig upptäcktspolicy i stället för att tyst förlora det.

Ingen proxyändring för hela datorn behövs. Ha med både den avsedda proxyvärden och en medvetet vald reservvärd i vägkontrollerna.

Relaterade artiklar