libproxy chọn tuyến; ứng dụng khách của bạn thực hiện kết nối
Dùng kết quả libproxy làm ứng viên định tuyến theo từng URL thay vì trông đợi việc khám phá sẽ chuyển hướng socket của ứng dụng.
Nếu libproxy trả về URI proxy trong khi socket kế tiếp kết nối trực tiếp, hãy kiểm tra việc bàn giao. libproxy khám phá chính sách; nó không chặn mọi socket mà ứng dụng mở.
- Hỏi về tài nguyên. Trong C API libproxy 0.5 đã được ghi tài liệu, hãy tạo một factory proxy và yêu cầu URL đích thực tế.
- Diễn giải các ứng viên đã sắp thứ tự. Kết quả HTTP, SOCKS và trực tiếp cần cách xử lý khác nhau. Giữ nguyên thứ tự ưu tiên và chính sách thất bại dự định.
- Cấu hình phía tiêu thụ. Cung cấp loại proxy đã chọn, điểm cuối và cách bố trí xác thực cho một tầng truyền tải hỗ trợ chúng. Một socket TCP thô không có được thương lượng CONNECT hay SOCKS từ URI được trả về.
Đừng lưu một câu trả lời làm tuyến cho mọi đích và đừng biến định tuyến trực tiếp thành vĩnh viễn chỉ vì proxy đầu tiên thất bại một lần.
Nếu ứng dụng khách HTTP đã tích hợp proxy hệ thống hoặc khám phá PAC, hãy chọn một chủ sở hữu duy nhất cho việc chọn. Hai bộ chọn độc lập cộng thêm một lớp bọc nữa có thể tạo ra tuyến mà không chính sách nào dự định.
Trong mã gốc, hãy theo vòng đời factory và bộ nhớ kết quả của API đã cài đặt. Dùng lại một factory có thể giữ trạng thái khám phá hữu ích, nhưng vẫn cần một truy vấn cho mỗi đích. Ghi nhật ký lựa chọn tách biệt với kết quả kết nối: URI được trả về không chứng minh việc xác thực, phân giải hay truy cập tiếp theo thành công.