diff options
Diffstat (limited to 'std/ws/README.md')
-rw-r--r-- | std/ws/README.md | 73 |
1 files changed, 3 insertions, 70 deletions
diff --git a/std/ws/README.md b/std/ws/README.md index bcfa5d189..54efc57cc 100644 --- a/std/ws/README.md +++ b/std/ws/README.md @@ -1,11 +1,11 @@ # ws -ws module is made to provide helpers to create WebSocket client/server. +ws module is made to provide helpers to create WebSocket server. For client +WebSockets, use the +[WebSocket API](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API). ## Usage -### Server - ```ts // Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. import { serve } from "https://deno.land/std/http/server.ts"; @@ -67,67 +67,6 @@ if (import.meta.main) { } ``` -### Client - -```ts -import { - connectWebSocket, - isWebSocketCloseEvent, - isWebSocketPingEvent, - isWebSocketPongEvent, -} from "https://deno.land/std/ws/mod.ts"; -import { encode } from "https://deno.land/std/encoding/utf8.ts"; -import { BufReader } from "https://deno.land/std/io/bufio.ts"; -import { TextProtoReader } from "https://deno.land/std/textproto/mod.ts"; -import { blue, green, red, yellow } from "https://deno.land/std/fmt/colors.ts"; - -const endpoint = Deno.args[0] || "ws://127.0.0.1:8080"; -/** simple websocket cli */ -try { - const sock = await connectWebSocket(endpoint); - console.log(green("ws connected! (type 'close' to quit)")); - - const messages = async (): Promise<void> => { - for await (const msg of sock) { - if (typeof msg === "string") { - console.log(yellow(`< ${msg}`)); - } else if (isWebSocketPingEvent(msg)) { - console.log(blue("< ping")); - } else if (isWebSocketPongEvent(msg)) { - console.log(blue("< pong")); - } else if (isWebSocketCloseEvent(msg)) { - console.log(red(`closed: code=${msg.code}, reason=${msg.reason}`)); - } - } - }; - - const cli = async (): Promise<void> => { - const tpr = new TextProtoReader(new BufReader(Deno.stdin)); - while (true) { - await Deno.stdout.write(encode("> ")); - const line = await tpr.readLine(); - if (line === null || line === "close") { - break; - } else if (line === "ping") { - await sock.ping(); - } else { - await sock.send(line); - } - } - }; - - await Promise.race([messages(), cli()]).catch(console.error); - - if (!sock.isClosed) { - await sock.close(1000).catch(console.error); - } -} catch (err) { - console.error(red(`Could not connect to WebSocket: '${err}'`)); -} - -Deno.exit(0); -``` - ## API ### isWebSocketCloseEvent @@ -173,9 +112,3 @@ Upgrade inputted TCP connection into WebSocket connection. ### createSecKey Returns base64 encoded 16 bytes string for Sec-WebSocket-Key header. - -### connectWebSocket - -Connect to WebSocket endpoint url with inputted endpoint string and headers. - -- note: Endpoint must be acceptable for URL. |