모듈 기본 모듈

모듈 ws

웹 소켓 지원 모듈

지침:

1
var ws = require('ws');

서버 생성:

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();

사용WebSocket고객:

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);

물체

Message

websocket 메시지 객체 생성, 참조WebSocketMessage

1
WebSocketMessage ws.Message;

Socket

WebSocket객체, 참조WebSocket

1
WebSocket ws.Socket;

정적 함수

upgrade

에서 websocket 프로토콜 핸들러를 생성합니다.http업그레이드 요청 접수 및 악수, 생성WebSocket물체

1
static Handler ws.upgrade(Function accept);

호출 매개변수:

  • accept: 함수, 연결 성공 처리 함수, 콜백은 두 개의 매개변수를 전달합니다. 첫 번째 매개변수는 수신된 것입니다.WebSocket객체, 두 번째 매개변수는 핸드셰이크입니다.HttpRequest물체

반환 결과:


에서 websocket 프로토콜 핸들러를 생성합니다.http업그레이드 요청 접수 및 악수, 생성WebSocket물체

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

호출 매개변수:

  • opts: 개체, 연결 옵션, 기본값은 {}입니다.
  • accept: 함수, 연결 성공 처리 함수, 콜백은 두 개의 매개변수를 전달합니다. 첫 번째 매개변수는 수신된 것입니다.WebSocket객체, 두 번째 매개변수는 핸드셰이크입니다.HttpRequest물체

반환 결과:

opts에는 요청에 대한 추가 옵션이 포함되어 있으며 지원되는 콘텐츠는 다음과 같습니다.

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

끊임없는

CONTINUE

연속 프레임을 나타내는 websocket 메시지 유형 0 지정

1
const ws.CONTINUE = 0;

TEXT

텍스트 프레임을 나타내는 websocket 메시지 유형 1 지정

1
const ws.TEXT = 1;

BINARY

바이너리 프레임을 나타내는 websocket 메시지 유형 2 지정

1
const ws.BINARY = 2;

CLOSE

websocket 메시지 유형 8을 지정하면 연결이 닫힙니다.

1
const ws.CLOSE = 8;

PING

ping 프레임을 나타내는 websocket 메시지 유형 9 지정

1
const ws.PING = 9;

PONG

pong 프레임을 나타내는 websocket 메시지 유형 10 지정

1
const ws.PONG = 10;

CONNECTING

지정하다WebSocket연결 중임을 나타내는 상태

1
const ws.CONNECTING = 0;

OPEN

지정하다WebSocket열린 상태를 나타내는 상태

1
const ws.OPEN = 1;

CLOSING

지정하다WebSocketCLOSE 메시지가 전송되었고 닫히기를 기다리는 상태를 나타내는 상태

1
const ws.CLOSING = 2;

CLOSED

지정하다WebSocket닫혀 있음을 나타내는 상태

1
const ws.CLOSED = 3;