모듈 기본 모듈

모듈 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

웹 소켓 프로토콜 처리기 만들기 http 업그레이드 요청 수신 및 악수, 생성 WebSocket 목적

1
static Handler ws.upgrade(Function accept);

호출 매개 변수 :

  • accept: 함수, 성공적인 연결을 처리하는 함수, 콜백은 두 개의 매개 변수를 전달하며 첫 번째 매개 변수는 수신됩니다. WebSocket 객체, 두 번째 매개 변수는 핸드 셰이크입니다. HttpRequest 목적

반환 결과 :


웹 소켓 프로토콜 처리기 만들기 http 업그레이드 요청 수신 및 악수, 생성 WebSocket 목적

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

호출 매개 변수 :

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

반환 결과 :

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

1 2 3 4
{ "perMessageDeflate": true, // 指定是否支持压缩,缺省支持 "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

퐁 프레임을 나타내는 websocket 메시지 유형 10을 지정하십시오.

1
const ws.PONG = 10;

CONNECTING

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

1
const ws.CONNECTING = 0;

OPEN

지정 WebSocket 열린 상태를 의미하는 상태

1
const ws.OPEN = 1;

CLOSING

지정 WebSocket CLOSE 메시지가 전송되었으며 닫히기를 기다리고 있음을 나타내는 상태

1
const ws.CLOSING = 2;

CLOSED

지정 WebSocket 닫힘을 의미하는 상태

1
const ws.CLOSED = 3;