AnyEvent::HTTP: асобныя проксі-маршруты праз sessionid
Выкарыстоўвайце яўны проксі AnyEvent::HTTP і ідэнтыфікатар сеанса, калі некалькі проксі-маршрутаў вядуць да адной мэты.
У AnyEvent::HTTP 2.25 паўторна выкарыстоўваемае злучэнне можа атрымаць перавагу, нават калі яно створана пры іншых наладах проксі. Калі запыты да аднаго сайта ідуць рознымі маршрутамі, раздзяляйце кэш значэннямі sessionid, спецыфічнымі для маршруту:
my $request = http_get 'http://www.example.com/',
proxy => ['proxy.example', 8080],
sessionid => 'office-route',
sub {
my ($body, $headers) = @_;
print $headers->{Status};
};Уключыце любое адрозненне ўліковага запісу, патрэбнае праграме, у гэтую ідэнтычнасць сеанса. Паўторнае выкарыстанне абмяжоўваецца супадаючымі сеансамі. Калі патрэбна свежае злучэнне, замест гэтага ўсталюйце persistent у false.
Для паказанага публічнага адраса HTTP спіс HTTP-проксі можа даць кандыдатаў host і port, калі дазволены публічны маршрут без аўтэнтыфікацыі. Фрагмент мяркуе, што AnyEvent::HTTP загружаны і яго цыкл падзей працуе. Трымайце ахоўнік запыту жывым да завяршэння; яго знішчэнне скасоўвае аперацыю.
Масіў проксі прымае імя хоста, порт і неабавязковую схему HTTP, а не URL з уліковымі данымі. Аўтэнтыфікацыя патрабуе адпаведнага загалоўка Proxy-Authorization, прадстаўленага выклікаючым бокам. Гэты просты прыклад HTTP трымае маршрутызацыю і ўласнасць злучэння асобна ад любой магчымасці тунелю HTTPS.