فرستادن فقط یک میزبان از پراکسی 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 | همان میزبان دقیق در همهٔ طرحهای مقصد. |
| زیردامنه | انتخاب جدا؛ اگر آن هم باید مطابق باشد، عمداً از wildcard پشتیبانیشده استفاده کنید. |
| مسیر | Mountها الگوهای طرح، میزبان و درگاه اختیاری را انتخاب میکنند، نه مسیرهای URL. |
| تغییرمسیر به میزبان دیگر | وقتی دنبال کردن تغییرمسیر فعال باشد، URL جدید تطبیق داده میشود و ممکن است مسیر پشتیبان مستقیم را به کار ببرد. |
مثال کشف محیط را در کلاینت و هر دو انتقال غیرفعال میکند. قانون پراکسی گستردهٔ دیگر یا mount مطابق میتواند هنگام تطبیق مثال نتیجه را عوض کند. اگر استقرار به تنظیم CA محیط تکیه دارد، اعتماد را صریح بدهید یا سیاست کشف مناسب را حفظ کنید، نه اینکه بیصدا از دست برود.
تغییر پراکسی کل دستگاه لازم نیست. میزبان موردنظرِ پراکسی و میزبان پشتیبانِ عمداً انتخابشده را هر دو در بررسی مسیر نگه دارید.