NAME
Protocol::WebSocket::Handshake::Server - WebSocket Server Handshake
SYNOPSIS
my $h = Protocol::WebSocket::Handshake::Server->new;
# Parse client request
$h->parse(<<"EOF");
WebSocket HTTP message
EOF
$h->error; # Check if there were any errors
$h->is_done; # Returns 1
# Create response
$h->to_string;
DESCRIPTION
Construct or parse a server WebSocket handshake. This module is written for convenience, since using request and response directly requires the same code again and again.
METHODS
new
Create a new Protocol::WebSocket::Handshake::Server instance.
new_from_psgi
my $env = {
HTTP_HOST => 'example.com',
HTTP_CONNECTION => 'Upgrade',
...
};
my $handshake = Protocol::WebSocket::Handshake::Server->new_from_psgi($env);
Create a new Protocol::WebSocket::Handshake::Server instance from PSGI environment.
parse
$handshake->parse($buffer);
$handshake->parse($handle);
Parse a WebSocket client request. Returns undef
and sets error
attribute on error.
When buffer is passed it's modified (unless readonly).
build_frame
$handshake->build_frame;
Builds Protocol::WebSocket::Frame with an appropriate version.
to_string
Construct a WebSocket server response.
is_body
Check whether handshake is in body state.
is_done
Check whether handshake is done.