AnyEvent::HTTP: separar rutas de proxy con sessionid
Use un proxy AnyEvent::HTTP explícito e un identificador de sesión cando varias rutas de proxy comparten o mesmo destino.
En AnyEvent::HTTP 2.25 unha conexión reutilizable pode ter prioridade aínda que se creou baixo outra configuración de proxy. Cando as peticións ao mesmo sitio usan rutas distintas, separe a caché con valores sessionid propios de cada ruta:
my $request = http_get 'http://www.example.com/',
proxy => ['proxy.example', 8080],
sessionid => 'office-route',
sub {
my ($body, $headers) = @_;
print $headers->{Status};
};Inclúa nesa identidade de sesión calquera distinción de conta que necesite a aplicación. A reutilización queda limitada a sesións coincidentes. Configure persistent en false cando faga falta unha conexión nova.
Para o enderezo HTTP público amosado, a lista de proxies HTTP pode fornecer valores candidatos de host e porto cando se permite unha ruta pública sen autenticación. O fragmento supón que AnyEvent::HTTP está cargado e que o seu bucle de eventos se executa. Manteña vivo o gardián da petición ata completala; destruílo cancela a operación.
A matriz de proxy acepta nome de host, porto e esquema HTTP opcional, non unha URL con credenciais. A autenticación require unha cabeceira Proxy-Authorization axeitada fornecida por quen chama. Este exemplo HTTP sinxelo mantén o encamiñamento e a propiedade da conexión separados de calquera capacidade de túnel HTTPS.