The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Mojo::UserAgent::Proxy - User agent proxy manager

SYNOPSIS

  use Mojo::UserAgent::Proxy;

  my $proxy = Mojo::UserAgent::Proxy->new;
  $proxy->detect;
  say $proxy->http;

DESCRIPTION

Mojo::UserAgent::Proxy manages proxy servers for Mojo::UserAgent.

ATTRIBUTES

Mojo::UserAgent::Proxy implements the following attributes.

http

  my $http = $proxy->http;
  $proxy   = $proxy->http('socks://sri:secret@127.0.0.1:8080');

Proxy server to use for HTTP and WebSocket requests.

https

  my $https = $proxy->https;
  $proxy    = $proxy->https('http://sri:secret@127.0.0.1:8080');

Proxy server to use for HTTPS and WebSocket requests.

not

  my $not = $proxy->not;
  $proxy  = $proxy->not(['localhost', 'intranet.mojolicious.org']);

Domains that don't require a proxy server to be used.

METHODS

Mojo::UserAgent::Proxy inherits all methods from Mojo::Base and implements the following new ones.

detect

  $proxy = $proxy->detect;

Check environment variables HTTP_PROXY, http_proxy, HTTPS_PROXY, https_proxy, NO_PROXY and no_proxy for proxy information. Automatic proxy detection can be enabled with the MOJO_PROXY environment variable.

is_needed

  my $bool = $proxy->is_needed('intranet.example.com');

Check if request for domain would use a proxy server.

prepare

  $proxy->prepare(Mojo::Transaction::HTTP->new);

Prepare proxy server information for transaction.

SEE ALSO

Mojolicious, Mojolicious::Guides, http://mojolicious.org.