AnyEvent::HTTP: osobne trasy proxy z sessionid
Używaj jawnego proxy AnyEvent::HTTP i identyfikatora sesji, gdy kilka tras proxy dzieli ten sam cel.
W AnyEvent::HTTP 2.25 połączenie wielokrotnego użytku może mieć pierwszeństwo, nawet jeśli powstało przy innym ustawieniu proxy. Gdy żądania do tej samej witryny używają różnych tras, rozdziel pamięć podręczną wartościami sessionid właściwymi dla trasy:
my $request = http_get 'http://www.example.com/',
proxy => ['proxy.example', 8080],
sessionid => 'office-route',
sub {
my ($body, $headers) = @_;
print $headers->{Status};
};Uwzględnij w tej tożsamości sesji wszelkie rozróżnienie konta potrzebne aplikacji. Ponowne użycie ogranicza się do pasujących sesji. Zamiast tego ustaw persistent na false, gdy potrzebne jest nowe połączenie.
Dla pokazanego publicznego adresu HTTP lista proxy HTTP może dostarczyć kandydujące wartości hosta i portu, gdy dozwolona jest publiczna trasa bez uwierzytelniania. Fragment zakłada, że AnyEvent::HTTP jest załadowany, a jego pętla zdarzeń działa. Utrzymuj strażnika żądania przy życiu do zakończenia; jego zniszczenie anuluje operację.
Tablica proxy przyjmuje nazwę hosta, port i opcjonalny schemat HTTP, a nie URL z poświadczeniami. Uwierzytelnianie wymaga odpowiedniego nagłówka Proxy-Authorization dostarczonego przez wywołującego. Ten prosty przykład HTTP trzyma routing i własność połączenia z dala od jakiejkolwiek możliwości tunelu HTTPS.