The manakai project


An environment variable based proxy manager


  use Web::Transport::ENVProxyManager;
  $pm = Web::Transport::ENVProxyManager->new;
  $pm->get_proxies_for_url ($url)->then (sub {
    $proxies = $_[0];


The Web::Transport::ENVProxyManager object is a proxy manager, which choose proxies based on environment variables such as https_proxy.

This module is a proxy manager (see "PROXY MANAGERS" in Web::Transport).


Following methods are available:

$pm = Web::Transport::ENVProxyManager->new

Create a proxy manager, using system's environment variable for this process (i.e. %ENV).

$pm = Web::Transport::ENVProxyManager->new_from_envs ($hashref)

Create a proxy manager. The argument must be a hash reference of environment variables. Hash keys must be environment variable names and values must be corresponding environment variable values. Names and values must be byte strings.

$promise = $pm->get_proxies_for_url ($url, $name => $value, ...)

Get the list of the proxies for the specified URL. See "PROXY MANAGERS" in Web::Transport.

This module defines the encoding of the platform (see Web Transport Processing) as UTF-8, ignoring any LOCALE environment variable's encoding.


Web Transport Processing <>.


Wakaba <>.


Copyright 2016-2018 Wakaba <>.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.