NAME
Protocol::WebSocket::Response - WebSocket Response
SYNOPSIS
# Constructor
$res = Protocol::WebSocket::Response->new(
host => 'example.com',
resource_name => '/demo',
origin => 'file://',
number1 => 777_007_543,
number2 => 114_997_259,
challenge => "\x47\x30\x22\x2D\x5A\x3F\x47\x58"
);
$res->to_string; # HTTP/1.1 101 WebSocket Protocol Handshake
# Upgrade: WebSocket
# Connection: Upgrade
# Sec-WebSocket-Origin: file://
# Sec-WebSocket-Location: ws://example.com/demo
#
# 0st3Rl&q-2ZU^weu
# Parser
$res = Protocol::WebSocket::Response->new;
$res->parse("HTTP/1.1 101 WebSocket Protocol Handshake\x0d\x0a");
$res->parse("Upgrade: WebSocket\x0d\x0a");
$res->parse("Connection: Upgrade\x0d\x0a");
$res->parse("Sec-WebSocket-Origin: file://\x0d\x0a");
$res->parse("Sec-WebSocket-Location: ws://example.com/demo\x0d\x0a");
$res->parse("\x0d\x0a");
$res->parse("0st3Rl&q-2ZU^weu");
DESCRIPTION
Construct or parse a WebSocket response.
ATTRIBUTES
host
location
origin
resource_name
secure
METHODS
new
Create a new Protocol::WebSocket::Response instance.
parse
$res->parse($buffer);
Parse a WebSocket response. Incoming buffer is modified.
to_string
Construct a WebSocket response.
cookie
cookies
key
key1
$self->key1;
Set or get Sec-WebSocket-Key1
field.
key2
$self->key2;
Set or get Sec-WebSocket-Key2
field.
number1
$self->number1;
$self->number1(123456);
Set or extract from Sec-WebSocket-Key1
generated number
value.
number2
$self->number2;
$self->number2(123456);
Set or extract from Sec-WebSocket-Key2
generated number
value.
status
$self->status;
Get response status (101).
body
$self->body;
Get response body.
headers
my $arrayref = $self->headers;
Get response headers.