Module de base du module

module ws

module de support websocket

Des instructions:

1
var ws = require('ws');

Créez un serveur :

1 2 3 4 5 6 7 8 9
var 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.start();

utilisationWebSocketClient:

1 2 3 4
var ws = require('ws'); var conn = new ws.Socket('ws://127.0.0.1/ws'); conn.onmessage = e => console.log(e.data);

objet

Message

Créez un objet de message websocket, voirWebSocketMessage

1
WebSocketMessage ws.Message;

Socket

WebSocketobjet, voirWebSocket

1
WebSocket ws.Socket;

fonction statique

upgrade

Créer un gestionnaire de protocole WebSocket à partir dehttpRecevoir la demande de mise à niveau et la poignée de main, générerWebSocketobjet

1
static Handler ws.upgrade(Function accept);

Paramètres d'appel :

  • accept: Fonction, la fonction de gestionnaire de succès de connexion, le rappel passera deux paramètres, le premier paramètre est le reçuWebSocketobjet, le deuxième paramètre est la poignée de mainHttpRequestobjet

Retourner le résultat :


Créer un gestionnaire de protocole WebSocket à partir dehttpRecevoir la demande de mise à niveau et la poignée de main, générerWebSocketobjet

1 2
static Handler ws.upgrade(Object opts, Function accept);

Paramètres d'appel :

  • opts: Objet, options de connexion, la valeur par défaut est {}
  • accept: Fonction, la fonction de gestionnaire de succès de connexion, le rappel passera deux paramètres, le premier paramètre est le reçuWebSocketobjet, le deuxième paramètre est la poignée de mainHttpRequestobjet

Retourner le résultat :

opts contient des options supplémentaires pour la requête, celles prises en charge sont les suivantes :

1 2 3 4
{ "perMessageDeflate": false, // 指定是否支持压缩,缺省不支持 "maxPayload": 67108864 // 指定最大数据包尺寸,缺省为 67108864 }

constant

CONTINUE

Spécifie le type de message websocket 0, qui représente une trame de continuation

1
const ws.CONTINUE = 0;

TEXT

Spécifiez le type de message websocket 1, représentant un cadre de texte

1
const ws.TEXT = 1;

BINARY

Spécifiez le type de message websocket 2, représentant une trame binaire

1
const ws.BINARY = 2;

CLOSE

Spécifiez le type de message websocket 8, connexion fermée

1
const ws.CLOSE = 8;

PING

Spécifiez le type de message websocket 9, représentant une trame ping

1
const ws.PING = 9;

PONG

Spécifiez le type de message websocket 10, représentant un cadre pong

1
const ws.PONG = 10;

CONNECTING

spécifierWebSocketStatut, ce qui signifie se connecter

1
const ws.CONNECTING = 0;

OPEN

spécifierWebSocketétat, indiquant l'état ouvert

1
const ws.OPEN = 1;

CLOSING

spécifierWebSocketStatut, indiquant qu'un message CLOSE a été envoyé, en attente de fermeture

1
const ws.CLOSING = 2;

CLOSED

spécifierWebSocketétat, indiquant fermé

1
const ws.CLOSED = 3;