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


Manual Reference Pages  -  MOJO::TRANSACTION::HTTP (3)

.ds Aq ’

NAME

Mojo::Transaction::HTTP - HTTP transaction

CONTENTS

SYNOPSIS



  use Mojo::Transaction::HTTP;

  # Client
  my $tx = Mojo::Transaction::HTTP->new;
  $tx->req->method(GET);
  $tx->req->url->parse(http://example.com);
  $tx->req->headers->accept(application/json);
  say $tx->res->code;
  say $tx->res->headers->content_type;
  say $tx->res->body;
  say $tx->remote_address;

  # Server
  my $tx = Mojo::Transaction::HTTP->new;
  say $tx->req->method;
  say $tx->req->url->to_abs;
  say $tx->req->headers->accept;
  say $tx->remote_address;
  $tx->res->code(200);
  $tx->res->headers->content_type(text/plain);
  $tx->res->body(Hello World!);



DESCRIPTION

Mojo::Transaction::HTTP is a container for HTTP transactions, based on RFC 7230 <http://tools.ietf.org/html/rfc7230> and RFC 7231 <http://tools.ietf.org/html/rfc7231>.

EVENTS

Mojo::Transaction::HTTP inherits all events from Mojo::Transaction and can emit the following new ones.

    request



  $tx->on(request => sub {
    my $tx = shift;
    ...
  });



Emitted when a request is ready and needs to be handled.



  $tx->on(request => sub {
    my $tx = shift;
    $tx->res->headers->header(X-Bender => Bite my shiny metal ass!);
  });



    resume



  $tx->on(resume => sub {
    my $tx = shift;
    ...
  });



Emitted when transaction is resumed.

    unexpected



  $tx->on(unexpected => sub {
    my ($tx, $res) = @_;
    ...
  });



Emitted for unexpected 1xx responses that will be ignored.



  $tx->on(unexpected => sub {
    my $tx = shift;
    $tx->res->on(finish => sub { say Follow-up response is finished. });
  });



ATTRIBUTES

Mojo::Transaction::HTTP inherits all attributes from Mojo::Transaction and implements the following new ones.

    previous



  my $previous = $tx->previous;
  $tx          = $tx->previous(Mojo::Transaction::HTTP->new);



Previous transaction that triggered this follow-up transaction, usually a Mojo::Transaction::HTTP object.



  # Paths of previous requests
  say $tx->previous->previous->req->url->path;
  say $tx->previous->req->url->path;



METHODS

Mojo::Transaction::HTTP inherits all methods from Mojo::Transaction and implements the following new ones.

    client_read



  $tx->client_read($bytes);



Read data client-side, used to implement user agents such as Mojo::UserAgent.

    client_write



  my $bytes = $tx->client_write;



Write data client-side, used to implement user agents such as Mojo::UserAgent.

    is_empty



  my $bool = $tx->is_empty;



Check transaction for HEAD request and 1xx, 204 or 304 response.

    keep_alive



  my $bool = $tx->keep_alive;



Check if connection can be kept alive.

    redirects



  my $redirects = $tx->redirects;



Return an array reference with all previous transactions that preceded this follow-up transaction.



  # Paths of all previous requests
  say $_->req->url->path for @{$tx->redirects};



    resume



  $tx = $tx->resume;



Resume transaction.

    server_read



  $tx->server_read($bytes);



Read data server-side, used to implement web servers such as Mojo::Server::Daemon.

    server_write



  my $bytes = $tx->server_write;



Write data server-side, used to implement web servers such as Mojo::Server::Daemon.

SEE ALSO

Mojolicious, Mojolicious::Guides, <http://mojolicious.org>.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 MOJO::TRANSACTION::HTTP (3) 2016-03-15

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