AnyEvent::HTTP: tách tuyến proxy bằng sessionid
Dùng proxy AnyEvent::HTTP tường minh và mã định danh phiên khi nhiều tuyến proxy dùng chung một đích.
Trong AnyEvent::HTTP 2.25, một kết nối tái sử dụng có thể được ưu tiên dù nó được tạo dưới một thiết lập proxy khác. Khi các yêu cầu đến cùng một trang web dùng tuyến khác nhau, hãy tách bộ nhớ đệm bằng các giá trị sessionid riêng cho từng tuyến:
my $request = http_get 'http://www.example.com/',
proxy => ['proxy.example', 8080],
sessionid => 'office-route',
sub {
my ($body, $headers) = @_;
print $headers->{Status};
};Đưa mọi khác biệt tài khoản mà ứng dụng cần vào danh tính phiên đó. Việc tái sử dụng chỉ giới hạn ở các phiên khớp nhau. Thay vào đó hãy đặt persistent thành false khi cần kết nối mới.
Với địa chỉ HTTP công khai được hiển thị, danh sách proxy HTTP có thể cung cấp giá trị máy chủ và cổng ứng viên khi tuyến công khai không cần xác thực được cho phép. Đoạn này giả định AnyEvent::HTTP đã được nạp và vòng lặp sự kiện của nó đang chạy. Giữ vật bảo vệ yêu cầu sống đến khi hoàn tất; hủy nó sẽ hủy thao tác.
Mảng proxy nhận tên máy chủ, cổng và lược đồ HTTP tùy chọn, không phải URL mang thông tin đăng nhập. Xác thực cần tiêu đề Proxy-Authorization phù hợp do bên gọi cung cấp. Ví dụ HTTP đơn giản này giữ định tuyến và quyền sở hữu kết nối tách khỏi mọi khả năng đường hầm HTTPS.