Explorar o código

新增websokect

duy %!s(int64=2) %!d(string=hai) anos
pai
achega
94d62bbaa0
Modificáronse 2 ficheiros con 40 adicións e 0 borrados
  1. 1 0
      src/config/index.js
  2. 39 0
      src/layout/index.vue

+ 1 - 0
src/config/index.js

@@ -20,6 +20,7 @@ export default {
     isLog: 'auto',  //是否打印日志
     ...config,
     ossUrl: 'https://bladex-chongqing-info.oss-cn-hangzhou.aliyuncs.com', //oss地址
+    socket: 'wss://business.hcxxy.com/wss/websocket/',  //测试线上
 
     //这里不再支持配置请求地址,请在 src/config/index.json 文件中配置。
     //相关参数,可查阅 src/config/index.md 文件说明

+ 39 - 0
src/layout/index.vue

@@ -255,6 +255,45 @@ const logoClick = () => {
 const userProjectClick = () => {
     router.push({path: '/user/project'});
 }
+
+//推送系统
+let socket;
+const setInitSocket = () => {
+    const user_id = userInfo.value.user_id;
+    socket = new WebSocket(website.socket + user_id);
+    try {
+        socket.onopen = function (evt) {
+            console.log('websocket链接成功');
+        };
+        socket.onclose = function (evt) {
+            console.log('websocket连接已断开')
+        };
+        socket.onmessage = function ({data}) {
+            if (data) {
+                msgCount.value = JSON.parse(data)
+            }
+            console.log(data, '消息信息')
+        };
+        socket.onerror = function ({data}) {
+            console.log('发生错误:', data)
+        };
+    } catch {
+    }
+}
+
+//发送消息
+const socketSend = (msg) => {
+    try {
+        if (socket) {
+            socket.send(msg);
+        } else {
+            setTimeout(() => {
+                socket.send(msg);
+            }, 1000)
+        }
+    } catch {
+    }
+}
 </script>
 
 <style lang="scss" scoped>