|
@@ -1,79 +1,121 @@
|
|
|
+import s from "./s.js"
|
|
|
|
|
|
-let websock = $ref(""); //webSocket使用
|
|
|
-let isConnect = $ref(false); //webSocket连接标识 避免重复连接
|
|
|
-let reConnectNum = $ref(1); //断开后重新连接的次数 免得后台挂了,前端一直重连
|
|
|
+import config from "./config.js"
|
|
|
+import {
|
|
|
+ axios
|
|
|
+} from '@/utils/request.js'
|
|
|
+let websock = ''; //webSocket使用
|
|
|
+let isConnect = false; //webSocket连接标识 避免重复连接
|
|
|
+let reConnectNum = 1; //断开后重新连接的次数 免得后台挂了,前端一直重连
|
|
|
const conceal = () => {
|
|
|
- websockList.value = [];
|
|
|
+ websockList.value = [];
|
|
|
};
|
|
|
|
|
|
const websocketonopen = () => {
|
|
|
- // console.log("WebSocket连接成功");
|
|
|
- //连接建立后修改标识
|
|
|
- isConnect = true;
|
|
|
+ // console.log("WebSocket连接成功");
|
|
|
+ //连接建立后修改标识
|
|
|
+ isConnect = true;
|
|
|
};
|
|
|
const websocketonerror = () => {
|
|
|
- console.log("WebSocket连接发生错误");
|
|
|
- //连接断开后修改标识
|
|
|
- isConnect = false;
|
|
|
- //连接错误 需要重连
|
|
|
- reConnect();
|
|
|
+ console.log("WebSocket连接发生错误");
|
|
|
+ //连接断开后修改标识
|
|
|
+ isConnect = false;
|
|
|
+ //连接错误 需要重连
|
|
|
+ reConnect();
|
|
|
};
|
|
|
const websocketonmessage = (e) => {
|
|
|
- if (e != null) {
|
|
|
- // console.log('websocketclose', e)
|
|
|
- let str = JSON.parse(e.data);
|
|
|
- // category : "SYS"
|
|
|
- // content : "您有一个通知公告,请查阅!"
|
|
|
- // createTime : 1670322927873
|
|
|
- // createUser : "1543837863788879871"
|
|
|
- // deleteFlag : "NOT_DELETE"
|
|
|
- // id : "1600076448078106626"
|
|
|
- // msgType : 1
|
|
|
- // subject : "您有一个通知公告,请查阅!"
|
|
|
- websockList.value = JSON.parse(JSON.stringify(str));
|
|
|
- }
|
|
|
+ if (e != null) {
|
|
|
+ // console.log('websocketclose', e)
|
|
|
+ let str = JSON.parse(e.data);
|
|
|
+ // category : "SYS"
|
|
|
+ // content : "您有一个通知公告,请查阅!"
|
|
|
+ // createTime : 1670322927873
|
|
|
+ // createUser : "1543837863788879871"
|
|
|
+ // deleteFlag : "NOT_DELETE"
|
|
|
+ // id : "1600076448078106626"
|
|
|
+ // msgType : 1
|
|
|
+ // subject : "您有一个通知公告,请查阅!"
|
|
|
+ websockList.value = JSON.parse(JSON.stringify(str));
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
// webSocket连接关闭
|
|
|
const websocketclose = () => {
|
|
|
- // console.log("webSocket连接关闭");
|
|
|
- isConnect = false;
|
|
|
- websock = "";
|
|
|
- reConnect();
|
|
|
+ // console.log("webSocket连接关闭");
|
|
|
+ isConnect = false;
|
|
|
+ websock = "";
|
|
|
+ reConnect();
|
|
|
};
|
|
|
|
|
|
// 尝试重新连接
|
|
|
const reConnect = () => {
|
|
|
- if (reConnectNum > 6) {
|
|
|
- // console.log("重连超过6次不再重连");
|
|
|
- return false;
|
|
|
- }
|
|
|
- // console.log("isConnect", isConnect, $store.getters.userId);
|
|
|
- //如果已经连上就不再重试了
|
|
|
- if (isConnect && !$store.getters.userId) return;
|
|
|
- initWebSocket($store.getters.userId);
|
|
|
- reConnectNum = reConnectNum + 1;
|
|
|
+ // if (reConnectNum > 6) {
|
|
|
+ // // console.log("重连超过6次不再重连");
|
|
|
+ // return false;
|
|
|
+ // }
|
|
|
+ // // console.log("isConnect", isConnect, $store.getters.userId);
|
|
|
+ // //如果已经连上就不再重试了
|
|
|
+ // if (isConnect && !$store.getters.userId) return;
|
|
|
+ // initWebSocket($store.getters.userId);
|
|
|
+ // reConnectNum = reConnectNum + 1;
|
|
|
};
|
|
|
const initWebSocket = (userId) => {
|
|
|
- // console.log("进入initWebSocket");
|
|
|
- // console.log("系统用户ID:" + userId);
|
|
|
- if (userId != null && userId != "") {
|
|
|
- // WebSocket与普通的请求所用协议有所不同,ws等同于http,wss等同于https
|
|
|
+ console.log('getBaseUrl = ', config.getBaseUrl)
|
|
|
+ // console.log("进入initWebSocket");
|
|
|
+ // console.log("系统用户ID:" + userId);
|
|
|
+ // if (userId != null && userId != "") {
|
|
|
+ // // WebSocket与普通的请求所用协议有所不同,ws等同于http,wss等同于https
|
|
|
+ console.log('a ', )
|
|
|
+ const t = new Date().getTime()
|
|
|
+ // const env = import.meta.env.VITE_API_BASEURL.split("://");
|
|
|
+ // // console.info("location.protocol", wsServer);
|
|
|
|
|
|
- const env = import.meta.env.VITE_API_BASEURL.split("://");
|
|
|
- let wsServer = `${env[0] === "https" ? "wss" : "ws"}://${
|
|
|
- env[1]
|
|
|
- }/socket/message/${userId}`;
|
|
|
- // console.info("location.protocol", wsServer);
|
|
|
+ // //线上环境
|
|
|
+ // //webSocket 前面加一个前缀xxx_websocket_ 区分后面其他项目的webSocket
|
|
|
+ // // let wsServer = "wss://域名地址或ip加端口/ nginx配置的 xxx_websocket/" + userId;
|
|
|
|
|
|
- //线上环境
|
|
|
- //webSocket 前面加一个前缀xxx_websocket_ 区分后面其他项目的webSocket
|
|
|
- // let wsServer = "wss://域名地址或ip加端口/ nginx配置的 xxx_websocket/" + userId;
|
|
|
+ let wsServer = `wss://doc.okenx.com:2000/socket.io/?EIO=3&transport=websocket&sid=d5ce250e2d16d9410233d8a4`;
|
|
|
+ websock = new WebSocket(wsServer);
|
|
|
+ websock.onopen = websocketonopen;
|
|
|
+ websock.onerror = websocketonerror;
|
|
|
+ websock.onmessage = websocketonmessage;
|
|
|
+ websock.onclose = websocketclose;
|
|
|
+ // }
|
|
|
+};
|
|
|
+
|
|
|
+export const startWebSocket = (data) => {
|
|
|
+ initWebSocket();
|
|
|
+ // var socket_api = 'https://doc.okenx.com:2000'
|
|
|
+ // var socket = s(socket_api);
|
|
|
+ // socket.on('market_depth', function(msg) {
|
|
|
+ // console.log('msg = ', msg)
|
|
|
+ // if (msg.type == 'market_depth') {
|
|
|
+ // if (3 == msg.legal_id && 1 == msg.currency_id) {
|
|
|
+ // //btc 匹配
|
|
|
+ // // var buyIn = JSON.parse(msg.bids);
|
|
|
+ // // var out = JSON.parse(msg.asks).reverse();
|
|
|
+ // var buyIn = msg.bids;
|
|
|
+ // var out = msg.asks;
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ // })
|
|
|
+
|
|
|
+ // setTimeout(() => {
|
|
|
+ // // 关闭
|
|
|
+ // console.log('关闭 = ')
|
|
|
+ // socket.close()
|
|
|
+ // }, 3000)
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+export const startAjaxSocket = () => {
|
|
|
+ // https://doc.okenx.com
|
|
|
+ // https://doc.okenx.com
|
|
|
+ const t = new Date().getTime()
|
|
|
+ axios.post(`:2000`, {
|
|
|
+ t: t
|
|
|
+ }).then(res => {
|
|
|
|
|
|
- websock = new WebSocket(wsServer);
|
|
|
- websock.onopen = websocketonopen;
|
|
|
- websock.onerror = websocketonerror;
|
|
|
- websock.onmessage = websocketonmessage;
|
|
|
- websock.onclose = websocketclose;
|
|
|
- }
|
|
|
-};
|
|
|
+ })
|
|
|
+}
|