class web::WebSocket
sys::Obj web::WebSocket
WebSocket is used for both client and server web socket messaging. Current implementation only supports basic non-fragmented text or binary messages.
- close
-
Bool close()
Close the web socket
- isClosed
-
Bool isClosed()
Return true if this socket has been closed
- openClient
-
static WebSocket openClient(Uri uri, Map<Str,Str>? headers := null)
Open a client connection. The URI must have a "ws" or "wss" scheme. The
headers
parameter defines additional HTTP headers to include in the connection request. - openServer
-
static WebSocket openServer(WebReq req, WebRes res)
Upgrade a server request to a WebSocket. Raise IOErr is there is any problems during the handshake in which case the calling WebMod should return a 400 response.
Note: once this method completes, the socket is now owned by the WebSocket instance and not the web server (wisp); it must be explicitly closed to prevent a file handle leak.
- receive
-
Obj? receive()
Receive a message which is returned as either a Str or Buf. Raise IOErr if socket has error or is closed.
- send
-
Send a message which must be either a Str of Buf. Bufs are sent using their full contents irrelevant of their current position.
- socketOptions
-
@Deprecated { msg=... }
SocketOptions socketOptions()Access to socket options for this request.