У 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-проксі може надати кандидатні значення хоста й порту, коли дозволено публічний маршрут без автентифікації. Фрагмент припускає, що AnyEvent::HTTP завантажено і його цикл подій працює. Тримайте сторож запиту живим до завершення; його знищення скасовує операцію.

Масив проксі приймає ім'я хоста, порт і необов'язкову схему HTTP, а не URL з обліковими даними. Автентифікація потребує відповідного заголовка Proxy-Authorization, наданого викликачем. Цей простий приклад HTTP тримає маршрутизацію та власність з'єднання окремо від будь-якої можливості тунелю HTTPS.

Схожі статті