AnyEvent::HTTP: sessionid ilə proxy marşrutlarını ayırmaq
Bir neçə proxy marşrutu eyni təyinatı paylaşdıqda açıq AnyEvent::HTTP proxy və sessiya identifikatorundan istifadə edin.
AnyEvent::HTTP 2.25-də təkrar istifadə oluna bilən bağlantı başqa proxy parametri altında yaradılsa belə üstünlük qazana bilər. Eyni sayta edilən sorğular fərqli marşrutlardan istifadə etdikdə keşi marşruta xas sessionid dəyərləri ilə ayırın:
my $request = http_get 'http://www.example.com/',
proxy => ['proxy.example', 8080],
sessionid => 'office-route',
sub {
my ($body, $headers) = @_;
print $headers->{Status};
};Tətbiqin tələb etdiyi hesab fərqini həmin sessiya kimliyinə daxil edin. Təkrar istifadə yalnız uyğun sessiyalarla məhdudlaşır. Təzə bağlantı tələb olunduqda əvəzində persistent dəyərini false edin.
Yuxarıda göstərilən açıq HTTP ünvanı üçün autentifikasiyasız açıq marşruta icazə verildikdə HTTP proxy siyahısı namizəd host və port dəyərləri verə bilər. Bu fraqment AnyEvent::HTTP-nin yükləndiyini və hadisə dövrünün işlədiyini nəzərdə tutur. Sorğu mühafizəçisini tamamlanana qədər canlı saxlayın; onu məhv etmək əməliyyatı ləğv edir.
Proxy massivi host adı, port və istəyə bağlı HTTP sxemi qəbul edir, etimad məlumatı daşıyan URL yox. Autentifikasiya üçün çağıranın təqdim etdiyi uyğun Proxy-Authorization başlığı lazımdır. Bu sadə HTTP nümunəsi marşrutlaşdırmanı və bağlantı sahibliyini istənilən HTTPS tunel imkanından ayrı saxlayır.