Cấp cho host đã chọn một transport proxy và cho phần còn lại của máy khách một transport trực tiếp tường minh:

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)

Thay địa chỉ tài liệu bằng điểm cuối HTTP mong muốn của dịch vụ hoặc danh sách proxy HTTP. Ở đây example.com dùng mount và example.org dùng mặc định trực tiếp. Cả hai lời gọi đều quan trọng: chỉ host qua proxy thành công chưa xác minh được tuyến dự phòng.

Chi tiết khớpTác dụng
all://example.comHost chính xác trên mọi scheme đích.
Tên miền conLựa chọn riêng; cố ý dùng ký tự đại diện được hỗ trợ nếu nó cũng cần khớp.
Đường dẫnMount chọn mẫu scheme, host và cổng tùy chọn, không chọn đường dẫn URL.
Chuyển hướng sang host khácKhi bật theo chuyển hướng, URL mới được so khớp và có thể dùng dự phòng trực tiếp.

Ví dụ tắt đọc môi trường ở máy khách và cả hai transport. Quy tắc proxy rộng khác hoặc mount khớp có thể đổi kết quả khi điều chỉnh. Nếu triển khai dựa vào cấu hình CA từ môi trường, cung cấp niềm tin đó tường minh hoặc giữ chính sách khám phá phù hợp, tránh mất đi mà không biết.

Không cần đổi proxy toàn máy. Giữ cả host định qua proxy và host dự phòng được chủ ý chọn trong kiểm tra tuyến.

Bài viết liên quan