提交 | 用户 | age
|
f207f5
|
1 |
"use strict";
|
S |
2 |
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3 |
function webSocket() {
|
|
4 |
var _a = wx.globalData, socketHost = _a.socketHost, OpenId = _a.OpenId, loginData = _a.loginData;
|
|
5 |
var wssUrl = socketHost + "/ws/websocketMessage/" + OpenId + "/" + loginData.dbId + "/" + wx.getStorageSync('sessionID') + "/4";
|
|
6 |
console.log('wssUrl...', wssUrl);
|
|
7 |
wx.globalData.SocketTask = wx.connectSocket({
|
|
8 |
url: wssUrl,
|
|
9 |
header: {
|
|
10 |
'content-type': 'application/json'
|
|
11 |
},
|
|
12 |
success: function (res) {
|
|
13 |
console.log('WebSocket连接创建中...... readyState=' + wx.globalData.SocketTask, res);
|
|
14 |
},
|
|
15 |
fail: function (err) {
|
|
16 |
wx.showToast({
|
|
17 |
title: '网络异常!',
|
|
18 |
icon: 'none'
|
|
19 |
});
|
|
20 |
console.log(err);
|
|
21 |
},
|
|
22 |
});
|
|
23 |
wx.globalData.SocketTask.onOpen(function (res) {
|
|
24 |
wx.globalData.socketOpen = true;
|
|
25 |
console.log('WebSocket连接已打开!readyState=' + wx.globalData.SocketTask.readyState, res);
|
|
26 |
});
|
|
27 |
wx.globalData.SocketTask.onClose(function (res) {
|
|
28 |
console.log('WebSocket 连接已关闭。readyState=' + wx.globalData.SocketTask.readyState, res);
|
|
29 |
wx.globalData.socketOpen = false;
|
|
30 |
socketReconnect();
|
|
31 |
});
|
|
32 |
wx.globalData.SocketTask.onError(function (onError) {
|
|
33 |
console.log('WebSocket 错误。错误信息', onError);
|
|
34 |
console.log('WebSocket 错误。 readyState = ' + wx.globalData.SocketTask.readyState);
|
|
35 |
wx.globalData.socketOpen = false;
|
|
36 |
socketReconnect();
|
|
37 |
});
|
|
38 |
wx.globalData.SocketTask.onMessage(function (onMessage) {
|
|
39 |
console.log('监听WebSocket接受到服务器的消息事件。服务器返回的消息', JSON.parse(onMessage.data));
|
|
40 |
var onMessage_data = JSON.parse(onMessage.data);
|
|
41 |
if (onMessage_data.state == 0) {
|
f46177
|
42 |
if (onMessage_data.info.msgType == 6009) {
|
S |
43 |
wx.globalData.detailSocketCallback(onMessage);
|
f207f5
|
44 |
}
|
f46177
|
45 |
else if (onMessage_data.info.msgType == 6006 || onMessage_data.info.msgType == 6010) {
|
S |
46 |
wx.globalData.hXSocketCallback(onMessage);
|
f207f5
|
47 |
}
|
S |
48 |
}
|
|
49 |
else if (onMessage_data.state == -1) {
|
f46177
|
50 |
wx.globalData.socketMsgCallback(onMessage);
|
f207f5
|
51 |
}
|
S |
52 |
});
|
|
53 |
}
|
|
54 |
exports.webSocket = webSocket;
|
|
55 |
function socketReconnect() {
|
|
56 |
setTimeout(function () {
|
|
57 |
if (wx.globalData.OpenId && wx.globalData.loginData.dbId && wx.globalData.SocketTask.readyState !== 0 && wx.globalData.SocketTask.readyState !== 1) {
|
|
58 |
console.log('开始重新尝试连接WebSocket!readyState=' + wx.globalData.SocketTask.readyState);
|
|
59 |
webSocket();
|
|
60 |
}
|
|
61 |
wx.globalData.isReconnect = true;
|
|
62 |
}, 3000);
|
|
63 |
}
|
|
64 |
exports.socketReconnect = socketReconnect;
|
|
65 |
function websocketConnect() {
|
|
66 |
if (wx.globalData.SocketTask) {
|
|
67 |
wx.globalData.SocketTask.close({
|
|
68 |
success: function (res) {
|
|
69 |
console.log('主动关闭 WebSocket 连接。', res);
|
|
70 |
}
|
|
71 |
});
|
|
72 |
socketReconnect();
|
|
73 |
}
|
|
74 |
else {
|
|
75 |
webSocket();
|
|
76 |
}
|
|
77 |
console.log('websocketConnect开始连接。。。');
|
|
78 |
}
|
|
79 |
exports.websocketConnect = websocketConnect;
|
f46177
|
80 |
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsid2Vic29ja2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsU0FBUyxTQUFTO0lBQ1osSUFBQSxrQkFBK0MsRUFBOUMsMEJBQVUsRUFBRSxrQkFBTSxFQUFFLHdCQUEwQixDQUFDO0lBRXBELElBQUksTUFBTSxHQUFNLFVBQVUsNkJBQXdCLE1BQU0sU0FBSSxTQUFTLENBQUMsSUFBSSxTQUFJLEVBQUUsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQUksQ0FBQztJQUNqSCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUUsQ0FBQztJQUVsQyxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQzFDLEdBQUcsRUFBRSxNQUFNO1FBQ1gsTUFBTSxFQUFFO1lBQ04sY0FBYyxFQUFFLGtCQUFrQjtTQUNuQztRQUVELE9BQU8sRUFBRSxVQUFBLEdBQUc7WUFFVixPQUFPLENBQUMsR0FBRyxDQUFDLGtDQUFrQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWpGLENBQUM7UUFDRCxJQUFJLEVBQUUsVUFBVSxHQUFHO1lBQ2pCLEVBQUUsQ0FBQyxTQUFTLENBQUM7Z0JBQ1gsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFFLE1BQU07YUFDYixDQUFDLENBQUM7WUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLENBQUM7S0FDRixDQUFDLENBQUM7SUFLSCxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBQyxHQUFPO1FBQ3RDLEVBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUNoQyxPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMs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LEdBQUcsQ0FBQyxvQkFBb0IsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN6QyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsZUFBZSxFQUFFLENBQUM7S0FDbkI7U0FBTTtRQUNMLFNBQVMsRUFBRSxDQUFDO0tBQ2I7SUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDekMsQ0FBQztBQUlDLDRDQUFnQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIOWIneWni+WMlndlYnNvY2tldFxyXG5mdW5jdGlvbiB3ZWJTb2NrZXQoKSB7XHJcbiAgbGV0IHtzb2NrZXRIb3N0LCBPcGVuSWQsIGxvZ2luRGF0YX0gPSB3eC5nbG9iYWxEYXRhO1xyXG4gIC8v55So5oi35p2l5rqQ5YiG57G777yaMS5FUlAg572R6aG156uv55So5oi377yMMi5FUlAgQVBQ56uv55So5oi377yMMy7ogZTnm5/llYbln47niYjlsI/nqIvluo/vvIjml6fniYjvvIksNC7mtLvliqjniYjlsI/nqIvluo/vvIjmlrDniYjvvIlcclxuICBsZXQgd3NzVXJsID0gYCR7c29ja2V0SG9zdH0vd3Mvd2Vic29ja2V0TWVzc2FnZS8ke09wZW5JZH0vJHtsb2dpbkRhdGEuZGJJZH0vJHt3eC5nZXRTdG9yYWdlU3luYygnc2Vzc2lvbklEJyl9LzRgO1xyXG4gIGNvbnNvbGUubG9nKCd3c3NVcmwuLi4nLCB3c3NVcmwsKTtcclxuICAvLyDliJvlu7pTb2NrZXRcclxuICB3eC5nbG9iYWxEYXRhLlNvY2tldFRhc2sgPSB3eC5jb25uZWN0U29ja2V0KHtcclxuICAgIHVybDogd3NzVXJsLFxyXG4gICAgaGVhZGVyOiB7XHJcbiAgICAgICdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbidcclxuICAgIH0sXHJcbiAgICAvLyBtZXRob2Q6ICdwb3N0JyxcclxuICAgIHN1Y2Nlc3M6IHJlcyA9PiB7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKCdXZWJTb2NrZXTov57mjqXliJvlu7rkuK0uLi4uLi4nLCByZXMpXHJcbiAgICAgIGNvbnNvbGUubG9nKCdXZWJTb2NrZXTov57mjqXliJvlu7rkuK0uLi4uLi4gcmVhZHlTdGF0ZT0nICsgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLHJlcyk7XHJcbiAgICAgIC8vIHNvY2tldE9wZW4gPSB0cnVlO1xyXG4gICAgfSxcclxuICAgIGZhaWw6IGZ1bmN0aW9uIChlcnIpIHtcclxuICAgICAgd3guc2hvd1RvYXN0KHtcclxuICAgICAgICB0aXRsZTogJ+e9kee7nOW8guW4uO+8gScsXHJcbiAgICAgICAgaWNvbjogJ25vbmUnXHJcbiAgICAgIH0pO1xyXG4gICAgICBjb25zb2xlLmxvZyhlcnIpO1xyXG4gICAgfSxcclxuICB9KTtcclxuXHJcblxyXG4gIC8vIHZhciB0aGF0ID0gdGhpcztcclxuICAvLyDnm5HlkKx3ZWJzb2NrZXRcclxuICB3eC5nbG9iYWxEYXRhLlNvY2tldFRhc2sub25PcGVuKChyZXM6YW55KSA9PiB7XHJcbiAgICB3eC5nbG9iYWxEYXRhLnNvY2tldE9wZW4gPSB0cnVlO1xyXG4gICAgY29uc29sZS5sb2coJ1dlYlNvY2tldOi/nuaOpeW3suaJk+W8gO+8gXJlYWR5U3RhdGU9JyArIHd4Lmdsb2JhbERhdGEuU29ja2V0VGFzay5yZWFkeVN0YXRlLHJlcyk7XHJcbiAgICAvLyBjb25zb2xlLmxvZygnV2ViU29ja2V0IOi/nuaOpeaJk+W8gOaIkOWKn+OAgicsIHJlcylcclxuICB9KTtcclxuICB3eC5nbG9iYWxEYXRhLlNvY2tldFRhc2sub25DbG9zZSgocmVzOmFueSkgPT4ge1xyXG4gICAgY29uc29sZS5sb2coJ1dlYlNvY2tldCDov57mjqXlt7LlhbPpl63jgIJyZWFkeVN0YXRlPScgKyB3eC5nbG9iYWxEYXRhLlNvY2tldFRhc2sucmVhZHlTdGF0ZSwgcmVzKTtcclxuICAgIHd4Lmdsb2JhbERhdGEuc29ja2V0T3BlbiA9IGZhbHNlO1xyXG4gICAgc29ja2V0UmVjb25uZWN0KCk7XHJcbiAgfSk7XHJcbiAgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLm9uRXJyb3IoKG9uRXJyb3I6YW55KSA9PiB7XHJcbiAgICBjb25zb2xlLmxvZygnV2ViU29ja2V0IOmUmeivr+OAgumUmeivr+S/oeaBrycsIG9uRXJyb3IpO1xyXG4gICAgY29uc29sZS5sb2coJ1dlYlNvY2tldCDplJnor6/jgIIgcmVhZHlTdGF0ZSA9ICcgKyB3eC5nbG9iYWxEYXRhLlNvY2tldFRhc2sucmVhZHlTdGF0ZSk7XHJcbiAgICB3eC5nbG9iYWxEYXRhLnNvY2tldE9wZW4gPSBmYWxzZTtcclxuICAgIHNvY2tldFJlY29ubmVjdCgpO1xyXG4gIH0pO1xyXG5cclxuXHJcbiAgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLm9uTWVzc2FnZSgob25NZXNzYWdlOmFueSkgPT4ge1xyXG4gICAgLy8gY29uc29sZS5sb2coJ+ebkeWQrFdlYlNvY2tldOaOpeWPl+WIsOacjeWKoeWZqOeahOa2iOaBr+S6i+S7tuOAguacjeWKoeWZqOi/lOWbnueahOa2iOaBrycsIEpTT04ucGFyc2Uob25NZXNzYWdlLmRhdGEpKVxyXG5cclxuICAgIGNvbnNvbGUubG9nKCfnm5HlkKxXZWJTb2NrZXTmjqXlj5fliLDmnI3liqHlmajnmoTmtojmga/kuovku7bjgILmnI3liqHlmajov5Tlm57nmoTmtojmga8nLCBKU09OLnBhcnNlKG9uTWVzc2FnZS5kYXRhKSk7XHJcblxyXG4gICAgbGV0IG9uTWVzc2FnZV9kYXRhID0gSlNPTi5wYXJzZShvbk1lc3NhZ2UuZGF0YSk7XHJcblxyXG5cclxuICAgIC8vb3BlcmNvZGU9MOihqOekuuWuouaIt+WIneWni+WMlui/lOWbnueahOS/oeaBr++8jOmcgOimgeS/neWtmOi/lOWbnueahGdyb3VwaWQs5L2c5Li65Lul5ZCO5Y+R5raI5oGv55qEZ3JvdXBpZOeahOWAvFxyXG4gICAgaWYgKG9uTWVzc2FnZV9kYXRhLnN0YXRlID09IDApIHsgLy8w6KGo56S65q2j5bi45raI5oGv77yMLTHooajnpLrlh7rplJnmtojmga/vvIzpnIDopoHlpITnkIZcclxuICAgICAgaWYgKG9uTWVzc2FnZV9kYXRhLmluZm8ubXNnVHlwZSA9PSA2MDA5KSB7XHJcbiAgICAgICAgLy9tc2dUeXBlID0gNjAwOSDooajnpLrlvZPliY3mtLvliqjnirbmgIHlt7Lnu4/mlLnlj5jvvIzpnIDopoHliLfmlrDlsI/nqIvluo/nq6/mraPlnKjmmL7npLrnmoTmtLvliqjlhoXlrrksIOatpOaXtiBtc2cg55qE5YC85piv5Y2V5Y+3XHJcbiAgICAgICAgd3guZ2xvYmFsRGF0YS5kZXRhaWxTb2NrZXRDYWxsYmFjayhvbk1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKG9uTWVzc2FnZV9kYXRhLmluZm8ubXNnVHlwZSA9PSA2MDA2fHxvbk1lc3NhZ2VfZGF0YS5pbmZvLm1zZ1R5cGU9PTYwMTApIHtcclxuICAgICAgICAvL21zZ1R5cGUgPSA2MDA2IOihqOekuuaguOmUgOaIkOWKn++8jOmcgOimgeWcqOmhtemdouaYvuekuuKAnOW3suaguOmUgOKAnSDlrZfmoLfmj5DphpLnlKjmiLdcclxuICAgICAgICAvLyBtc2dUeXBlID0gNjAxMCDooajnpLrlt7LmoLjplIDlrozmiJDvvIjngrnlh7vkuobmoLjplIDmjInpkq7vvInvvIzpnIDopoHlnKjlsI/nqIvluo/liY3nq6/pobXpnaLmmL7npLrigJzlt7LmoLjplIDigJ0g5a2X5qC35o+Q6YaS55So5oi3XHJcbiAgICAgICAgd3guZ2xvYmFsRGF0YS5oWFNvY2tldENhbGxiYWNrKG9uTWVzc2FnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIOaciea2iOaBr+S4lOa2iOaBr+acieWGheWuueaJjeaYvuekulxyXG5cclxuICAgICAgLy8g55So5LqO5Zyo5YW25LuW6aG16Z2i55uR5ZCsIHdlYnNvY2tldCDov5Tlm57nmoTmtojmga9cclxuICAgICAgLy8gd3guZ2xvYmFsRGF0YS5zb2NrZXRNc2dDYWxsYmFjayhvbk1lc3NhZ2UpO1xyXG5cclxuICAgIH1cclxuICAgIGVsc2UgaWYgKG9uTWVzc2FnZV9kYXRhLnN0YXRlID09IC0xKSB7XHJcbiAgICAgIC8vIOeUqOS6juWcqOWFtuS7lumhtemdouebkeWQrCB3ZWJzb2NrZXQg6L+U5Zue55qE6ZSZ6K+v5raI5oGvXHJcbiAgICAgIC8vd3guZ2xvYmFsRGF0YS5lcnJvck1zZ0NhbGxiYWNrKG9uTWVzc2FnZSk7XHJcbiAgICAgIC8vIOeUqOS6juWcqOWFtuS7lumhtemdouebkeWQrCB3ZWJzb2NrZXQg6L+U5Zue55qE5raI5oGvXHJcbiAgICAgIHd4Lmdsb2JhbERhdGEuc29ja2V0TXNnQ2FsbGJhY2sob25NZXNzYWdlKTtcclxuICAgIH1cclxuXHJcblxyXG4gIH0pO1xyXG59XHJcblxyXG4vLyDph43ov553ZWJzb2NrZXRcclxuZnVuY3Rpb24gc29ja2V0UmVjb25uZWN0KCkge1xyXG4gIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgLy8gY29uc29sZS5sb2coJ2lzQXV0aG9yaXplPScgKyB0aGlzLmdsb2JhbERhdGEuaXNBdXRob3JpemUsIHRoaXMuZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLnJlYWR5U3RhdGUpO1xyXG4gICAgaWYgKHd4Lmdsb2JhbERhdGEuT3BlbklkICYmIHd4Lmdsb2JhbERhdGEubG9naW5EYXRhLmRiSWQgJiYgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLnJlYWR5U3RhdGUgIT09IDAgJiYgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLnJlYWR5U3RhdGUgIT09IDEpIHtcclxuICAgICAgY29uc29sZS5sb2coJ+W8gOWni+mHjeaWsOWwneivlei/nuaOpVdlYlNvY2tldO+8gXJlYWR5U3RhdGU9JyArIHd4Lmdsb2JhbERhdGEuU29ja2V0VGFzay5yZWFkeVN0YXRlKTtcclxuICAgICAgd2ViU29ja2V0KCk7XHJcbiAgICB9XHJcbiAgICB3eC5nbG9iYWxEYXRhLmlzUmVjb25uZWN0ID0gdHJ1ZTtcclxuICB9LCAzMDAwKTtcclxufVxyXG5mdW5jdGlvbiB3ZWJzb2NrZXRDb25uZWN0KCl7XHJcbiAgaWYgKHd4Lmdsb2JhbERhdGEuU29ja2V0VGFzaykge1xyXG4gICAgd3guZ2xvYmFsRGF0YS5Tb2NrZXRUYXNrLmNsb3NlKHtcclxuICAgICAgc3VjY2VzczogKHJlczphbnkpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZygn5Li75Yqo5YWz6ZetIFdlYlNvY2tldCDov57mjqXjgIInLCByZXMpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIC8vIOaKiuS4iuS4quiBlOezu+S6uueahOa2iOaBr+a4heepuuW5tumHjei/nlxyXG4gICAgc29ja2V0UmVjb25uZWN0KCk7XHJcbiAgfSBlbHNlIHtcclxuICAgIHdlYlNvY2tldCgpO1xyXG4gIH1cclxuICBjb25zb2xlLmxvZygnd2Vic29ja2V0Q29ubmVjdOW8gOWni+i/nuaOpeOAguOAguOAgicpO1xyXG59XHJcbmV4cG9ydCB7XHJcbiAgd2ViU29ja2V0LFxyXG4gIHNvY2tldFJlY29ubmVjdCxcclxuICB3ZWJzb2NrZXRDb25uZWN0XHJcbn07XHJcbiJdfQ== |