ws মডিউল
Raw connection-এর উপর WebSocket protocol। web.upgrade(req)-এর সাথে pair-এ ডিজাইন — web সার্ভার HTTP upgrade-এর পরে একটি raw conn দেয়, ws সেটাকে frame-oriented socket-এ পরিণত করে।
import "web" as web;
import "ws" as ws;
var app = web.app();
app.get("/chat", function (req) {
if (not ws.validate_request(req)) { return web.error(400, "bad ws req"); }
var conn = web.upgrade(req);
var sock = ws.accept(conn, req);
sock.on_message(function (msg) { sock.send("echo: " + msg); });
sock.on_close (function (code) { print("closed:", code); });
});
app.listen({ port: 3000 });
API
| ফাংশন | বর্ণনা |
|---|---|
ws.validate_request(req) → bool | Valid WebSocket upgrade হলে true। |
ws.accept(conn, req) → sock | Upgrade response পাঠিয়ে frame-oriented socket। |
Socket object
| মেথড | বর্ণনা |
|---|---|
sock.on_message(fn) | প্রতি text frame-এ fn(text)। |
sock.on_binary(fn) | প্রতি binary frame-এ। |
sock.on_close(fn) | fn(code)। |
sock.send(text) | Text frame পাঠান। |
sock.send_binary(bytes) | Binary frame পাঠান। |
sock.close(code?) | Close, ঐচ্ছিক status code সহ। |
আরও দেখুন
web—web.upgrade(req)।