WebSocket
import { PubSub } from 'pubsub-js';
export const createWebSocket = (url) => {
let websocket, lockReconnect = false;
let receiveData = null;
websocket = new WebSocket(url);
websocket.onopen = function () {
console.log('建立连接成功!!!');
}
websocket.onerror = function () {
if (lockReconnect) return;
setTimeout(function () {
createWebSocket(url);
lockReconnect = false;
}, 4000);
};
websocket.onclose = function (e) {
console.log('websocket 断开: ' + e.code + ' ' + e.reason + ' ' + e.wasClean)
}
websocket.onmessage = function (event) {
lockReconnect = true;
receiveData = JSON.parse(event.data)
PubSub.publish('message', receiveData)
}
return websocket
}