0.0.1 • Published 5 years ago
native-websocket v0.0.1
native-websocket
对Websocket的简单封装以方便在不同项目之间统一使用。
Install
yarn add native-websocket
# or
npm install native-websocket --save
Usage
Configuration
Automatic socket connection from an URL string.
import NativeWebsocket from 'native-websocket';
new NativeWebsocket('wss://echo.websocket.org');
// protocols, just like WebSocket(url[, protocols])
new NativeWebsocket('wss://echo.websocket.org', [, protocols]);
JSON message
import NativeWebsocket from 'native-websocket';
new NativeWebsocket('wss://echo.websocket.org', {
format: 'json',
});
Heartbeat
import NativeWebsocket from 'native-websocket';
new NativeWebsocket('wss://echo.websocket.org', {
heartbeat: {
enable: true,
message: 'ping',
delay: 5000,
},
});
Reconnection
import NativeWebsocket from 'native-websocket';
new NativeWebsocket('wss://echo.websocket.org', {
reconnection: {
enable: true,
attempts: 6,
delay: 5000,
},
});
Manage connection manually
import NativeWebsocket from 'native-websocket';
const nw = new NativeWebsocket('wss://echo.websocket.org', {
connectManually: true,
});
// 手动连接
nw.connect();
// 手动关闭
nw.close();
Events
// init
import NativeWebsocket from 'native-websocket';
const nw = new NativeWebsocket('wss://echo.websocket.org', {
onopen: (event: Event) => {},
onmessage: (MessageEvent: Event) => {},
onclose: (CloseEvent: Event) => {},
onerror: (event: Event) => {},
});
// or
import { emitter } from 'native-websocket';
// (nw.emitter === emitter) --->>> true
emitter.on('onopen', (event: Event) => {});
emitter.on('onmessage', (MessageEvent: Event) => {});
emitter.on('onclose', (CloseEvent: Event) => {});
emitter.on('onerror', (event: Event) => {});
// remove events: emitter.removeListener([event[, handler]])
emitter.removeListener('onopen');
emitter.removeAllListeners();
@todo
React Hooks
Vue Plugin
0.0.1
5 years ago