The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Protocol::WebSocket::Handshake::Client - WebSocket Client Handshake

SYNOPSIS

my $h =
  Protocol::WebSocket::Handshake::Client->new(url => 'ws://example.com');

# Create request
$h->to_string;

# Parse server response
$h->parse(<<"EOF");
    WebSocket HTTP message
EOF

$h->error;   # Check if there were any errors
$h->is_done; # Returns 1

DESCRIPTION

Construct or parse a client WebSocket handshake. This module is written for convenience, since using request and response directly requires the same code again and again.

ATTRIBUTES

url

$handshake->url('ws://example.com/demo');

Set or get WebSocket url.

METHODS

new

Create a new Protocol::WebSocket::Handshake::Client instance.

parse

$handshake->parse($buffer);

Parse a WebSocket server response. Returns undef and sets error attribute on error. Buffer is modified.

to_string

Construct a WebSocket client request.

is_done

Check whether handshake is done.