Modul ws
Websocket-Support-Modul
Anleitung:
1var ws = require('ws');
Erstellen Sie einen Server:
1
2
3
4
5
6
7
8
9var ws = require('ws');
var http = require('http');
var svr = new http.Server(80, {
'/ws': ws.upgrade((conn, req) => {
conn.onmessage = e => console.log(e.data);
})
});
svr.run();
Verwenden Sie den WebSocket Client:
1
2
3
4var ws = require('ws');
var conn = new ws.Socket('ws://127.0.0.1/ws');
conn.onmessage = e => console.log(e.data);
Objekt
Message
Erstellen Sie ein Websocket-Nachrichtenobjekt, siehe WebSocketMessage
1WebSocketMessage ws.Message;
Socket
WebSocket Objekt, siehe WebSocket
1WebSocket ws.Socket;
Statische Funktion
upgrade
Erstellen Sie einen Websocket-Protokollprozessor, empfangen Sie eine Upgrade-Anfrage von http und geben Sie sich die Hand, generieren Sie ein WebSocket Objekt
1static Handler ws.upgrade(Function accept);
Parameter aufrufen:
- accept : Funktion, die Funktion zur Verarbeitung des Verbindungserfolgs, der Rückruf HttpRequest zwei Parameter, der erste Parameter ist das empfangene WebSocket Objekt und der zweite Parameter ist das HttpRequest Objekt während des Handshakes
Ergebnis zurückgeben:
- Handler , Protokoll - Handler zurückkehrt, mit HttpServer , Chain , Routing und andere Docking
`
Erstellen Sie einen Websocket-Protokollprozessor, empfangen Sie eine Upgrade-Anfrage von http und geben Sie sich die Hand, generieren Sie ein WebSocket Objekt
1
2static Handler ws.upgrade(Object opts,
Function accept);
Parameter aufrufen:
- opts : Object, Anschlussmöglichkeiten, ist die Standardeinstellung {}
- accept : Funktion, die Funktion zur Verarbeitung des Verbindungserfolgs, der Rückruf HttpRequest zwei Parameter, der erste Parameter ist das empfangene WebSocket Objekt und der zweite Parameter ist das HttpRequest Objekt während des Handshakes
Ergebnis zurückgeben:
- Handler , Rückgabeprotokoll-Handler, kann mit HttpServer , Chain , Routing usw. verbunden werden.
opts enthält zusätzliche angeforderte Optionen und der unterstützte Inhalt lautet wie folgt:
1
2
3
4{
"perMessageDeflate": true, // 指定是否支持压缩,缺省支持
"maxPayload": 67108864 // 指定最大数据包尺寸,缺省为 67108864
}
Konstante
CONTINUE
Geben Sie den Websocket-Nachrichtentyp 0 an, der einen Fortsetzungsrahmen darstellt
1const ws.CONTINUE = 0;
TEXT
Geben Sie den Websocket-Nachrichtentyp 1 an, der einen Textrahmen darstellt
1const ws.TEXT = 1;
BINARY
Geben Sie den Websocket-Nachrichtentyp 2 an, der einen Binärrahmen darstellt
1const ws.BINARY = 2;
CLOSE
Geben Sie den Websocket-Nachrichtentyp 8 an. Die Verbindung wird geschlossen
1const ws.CLOSE = 8;
PING
Geben Sie den Websocket-Nachrichtentyp 9 an, der einen Ping-Frame darstellt
1const ws.PING = 9;
PONG
Geben Sie den Websocket-Nachrichtentyp 10 an, der einen Pong-Frame darstellt
1const ws.PONG = 10;
CONNECTING
Geben Sie den WebSocket Status an und geben Sie an, dass eine Verbindung hergestellt wird
1const ws.CONNECTING = 0;
OPEN
Geben Sie den WebSocket Status an, dh den offenen Status
1const ws.OPEN = 1;
CLOSING
Geben Sie den WebSocket Status an und geben Sie an, dass die CLOSE-Nachricht gesendet wurde und darauf wartet, geschlossen zu werden
1const ws.CLOSING = 2;
CLOSED
Geben Sie den WebSocket Status an und geben Sie an, dass er geschlossen wurde
1const ws.CLOSED = 3;