使用 Node 建立 WebSocket 伺服器

做法

初始化專案。

1
npm init

安裝 ws 依賴套件。

1
npm install ws

新增 main.js 檔:

1
2
3
4
5
6
7
8
9
10
11
const { WebSocketServer } = require('ws');

const wss = new WebSocketServer({ port: 8080 });

wss.on('connection', (ws) => {
ws.on('message', (msg) => {
console.log('received: %s', msg);
});

ws.send('Hello, world!');
});

在瀏覽器的 Console 進行測試:

1
2
var ws = new WebSocket('ws://localhost:8080')
ws.onmessage = (e) => console.log('received:', e.data)

客戶端在 WebSocket 建立連線後,會馬上收到訊息:

1
received: Hello, world!

客戶端可以使用 send() 方法發送訊息:

1
ws.send('Hi!')

服務端會馬上收到訊息:

1
received: Hi!

程式碼

參考資料