Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Mojo::IOLoop::Client(3User Contributed Perl DocumentatiMojo::IOLoop::Client(3)

NAME
       Mojo::IOLoop::Client - Non-blocking TCP/IP and UNIX domain socket
       client

SYNOPSIS
	 use Mojo::IOLoop::Client;

	 # Create socket connection
	 my $client = Mojo::IOLoop::Client->new;
	 $client->on(connect =>	sub {
	   my ($client,	$handle) = @_;
	   ...
	 });
	 $client->on(error => sub {
	   my ($client,	$err) =	@_;
	   ...
	 });
	 $client->connect(address => 'example.com', port => 80);

	 # Start reactor if necessary
	 $client->reactor->start unless	$client->reactor->is_running;

DESCRIPTION
       Mojo::IOLoop::Client opens TCP/IP and UNIX domain socket	connections
       for Mojo::IOLoop.

EVENTS
       Mojo::IOLoop::Client inherits all events	from Mojo::EventEmitter	and
       can emit	the following new ones.

   connect
	 $client->on(connect =>	sub {
	   my ($client,	$handle) = @_;
	   ...
	 });

       Emitted once the	connection is established.

   error
	 $client->on(error => sub {
	   my ($client,	$err) =	@_;
	   ...
	 });

       Emitted if an error occurs on the connection, fatal if unhandled.

ATTRIBUTES
       Mojo::IOLoop::Client implements the following attributes.

   reactor
	 my $reactor = $client->reactor;
	 $client     = $client->reactor(Mojo::Reactor::Poll->new);

       Low-level event reactor,	defaults to the	"reactor" attribute value of
       the global Mojo::IOLoop singleton.

METHODS
       Mojo::IOLoop::Client inherits all methods from Mojo::EventEmitter and
       implements the following	new ones.

   can_nnr
	 my $bool = Mojo::IOLoop::Client->can_nnr;

       True if Net::DNS::Native	0.15+ is installed and non-blocking name
       resolution support enabled.

   can_socks
	 my $bool = Mojo::IOLoop::Client->can_socks;

       True if IO::Socket::SOCKS 0.64+ is installed and	SOCKS5 support
       enabled.

   connect
	 $client->connect(address => '127.0.0.1', port => 3000);
	 $client->connect({address => '127.0.0.1', port	=> 3000});

       Open a socket connection	to a remote host. Note that non-blocking name
       resolution depends on Net::DNS::Native (0.15+), SOCKS5 support on
       IO::Socket::Socks (0.64), and TLS support on IO::Socket::SSL (1.94+).

       These options are currently available:

       address
	   address => 'mojolicious.org'

	 Address or host name of the peer to connect to, defaults to
	 127.0.0.1.

       handle
	   handle => $handle

	 Use an	already	prepared IO::Socket::IP	object.

       local_address
	   local_address => '127.0.0.1'

	 Local address to bind to.

       path
	   path	=> '/tmp/myapp.sock'

	 Path of UNIX domain socket to connect to.

       port
	   port	=> 80

	 Port to connect to, defaults to 80 or 443 with	"tls" option.

       socks_address
	   socks_address => '127.0.0.1'

	 Address or host name of SOCKS5	proxy server to	use for	connection.

       socks_pass
	   socks_pass => 'secr3t'

	 Password to use for SOCKS5 authentication.

       socks_port
	   socks_port => 9050

	 Port of SOCKS5	proxy server to	use for	connection.

       socks_user
	   socks_user => 'sri'

	 Username to use for SOCKS5 authentication.

       timeout
	   timeout => 15

	 Maximum amount	of time	in seconds establishing	connection may take
	 before	getting	canceled, defaults to 10.

       tls
	   tls => 1

	 Enable	TLS.

       tls_ca
	   tls_ca => '/etc/tls/ca.crt'

	 Path to TLS certificate authority file. Also activates	hostname
	 verification.

       tls_cert
	   tls_cert => '/etc/tls/client.crt'

	 Path to the TLS certificate file.

       tls_key
	   tls_key => '/etc/tls/client.key'

	 Path to the TLS key file.

SEE ALSO
       Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.

perl v5.24.1			  2017-05-25	       Mojo::IOLoop::Client(3)

NAME | SYNOPSIS | DESCRIPTION | EVENTS | ATTRIBUTES | METHODS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Mojo::IOLoop::Client&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help