Пошаљите само један хост кроз HTTPX прокси
Монтирајте прокси транспорт за одабрани хост, док уобичајена резервна путања клијента остаје директна.
Одабраном хосту доделите прокси транспорт, а остатку клијента експлицитни директни транспорт:
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 користи mount, а example.org директни подразумевани транспорт. Оба позива су битна: само успех прокси хоста не потврђује резервну путању.
| Детаљ подударања | Учинак |
|---|---|
all://example.com | Тачан хост кроз све шеме одредишта. |
| Поддомен | Посебан избор; намерно употребите подржани џокер ако и он треба да одговара. |
| Путања | Mount-ови бирају обрасце шеме, хоста и опционог порта, а не URL путање. |
| Преусмерење на други хост | Када је праћење преусмерења укључено, нови URL се поново упарује и може користити директну резервну путању. |
Пример искључује откривање окружења на клијенту и оба транспорта. Друго широко прокси правило или одговарајући mount може променити резултат при прилагођавању. Ако постављање зависи од CA конфигурације из окружења, експлицитно дајте то поверење или задржите одговарајућу политику откривања уместо да га тихо изгубите.
Није потребна прокси промена на целој машини. Проверавајте и намењени прокси хост и намерно изабран резервни хост.