GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Mojo::IOLoop::Client(3) User Contributed Perl Documentation Mojo::IOLoop::Client(3)

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

  use Mojo::IOLoop::Client;
  # Create socket connection
  my $client = Mojo::IOLoop::Client->new;
  $client->on(connect => sub ($client, $handle) {...});
  $client->on(error => sub ($client, $err) {...});
  $client->connect(address => 'example.com', port => 80);
  # Start reactor if necessary
  $client->reactor->start unless $client->reactor->is_running;

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

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

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

Emitted once the connection is established.

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

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

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

  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. Note that this attribute is weakened.

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

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

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

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

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

  $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 (2.009+).

These options are currently available:

  address => 'mojolicious.org'
    

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

  handle => $handle
    

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

  path => '/tmp/myapp.sock'
    

Path of UNIX domain socket to connect to.

  port => 80
    

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

  socket_options => {LocalAddr => '127.0.0.1'}
    

Additional options for IO::Socket::IP when opening new connections.

  socks_address => '127.0.0.1'
    

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

  socks_pass => 'secr3t'
    

Password to use for SOCKS5 authentication.

  socks_port => 9050
    

Port of SOCKS5 proxy server to use for connection.

  socks_user => 'sri'
    

Username to use for SOCKS5 authentication.

  timeout => 15
    

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

  tls => 1
    

Enable TLS.

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

Path to TLS certificate authority file.

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

Path to the TLS certificate file.

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

Path to the TLS key file.

  tls_options => {SSL_alpn_protocols => ['foo', 'bar'], SSL_verify_mode => 0x00}
    

Additional options for IO::Socket::SSL.

Mojolicious, Mojolicious::Guides, <https://mojolicious.org>.

2023-04-27 perl v5.40.2

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.