Mojo::Transaction::HTTP - HTTP 1.1 transaction container
use Mojo::Transaction::HTTP; my $tx = Mojo::Transaction::HTTP->new;
Mojo::Transaction::HTTP is a container for HTTP 1.1 transactions as described in RFC 2616.
Mojo::Transaction::HTTP inherits all events from Mojo::Transaction and can emit the following new ones.
$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!');
});
$tx->on(upgrade => sub {
my ($tx, $ws) = @_;
...
});
Emitted when transaction gets upgraded to a Mojo::Transaction::WebSocket object.
$tx->on(upgrade => sub {
my ($tx, $ws) = @_;
$ws->res->headers->header('X-Bender', 'Bite my shiny metal ass!');
});
Mojo::Transaction::HTTP inherits all attributes from Mojo::Transaction.
Mojo::Transaction::HTTP inherits all methods from Mojo::Transaction and implements the following new ones.
$tx->client_read($chunk);
Read and process client data.
my $chunk = $tx->client_write;
Write client data.
my $success = $tx->keep_alive;
Check if connection can be kept alive.
my $leftovers = $tx->server_leftovers;
Leftovers from the server request, used for pipelining.
$tx->server_read($chunk);
Read and process server data.
my $chunk = $tx->server_write;
Write server data.