WebSocket vue连接、客户端主动关闭实例

WebSocket vue连接、客户端主动关闭实例

https://blog.csdn.net/WK313753744/article/details/56007028
https://blog.csdn.net/ll666634/article/details/79028930
用vue-cli搭建的项目 在common下新建个js文件内容如下:

export function initWebpack(token){//初始化websocket
 
  const wsuri = 'ws://'+webUrl+'?token='+token; 
  this.websock = new WebSocket(wsuri);//这里面的this都指向vue
  console.log(this.websock)
  this.websock.onopen = websocketopen;
  this.websock.onmessage = websocketonmessage;
  this.websock.onclose = websocketclose;
  this.websock.onerror = websocketerror; 
}
function websocketopen(){//打开
  console.log("WebSocket连接成功")
} 


function websocketonmessage(e){ //数据接收
  console.log("WebSocket接受到数据")
  if(sessionStorage.getItem('number')==undefined){
    this.number = 1  
    //存session
    resetSetItem('number',this.number);
  }else if(sessionStorage.getItem('number')){ 
    var num = parseInt(sessionStorage.getItem('number'))
    num+=1
    //存session
    resetSetItem('number',num);
  }

}
function websocketclose(){  //关闭
  console.log("WebSocket关闭");
  // initWebpack(this.token)
}
 function websocketerror(){  //失败
  console.log("WebSocket连接失败");
}
export function close(){
  this.websock.close()//关闭websocket
  this.websock.onclose=function(e){
    console.log(e)//监听关闭事件
    console.log('关闭') 
  }
}

代码截图
接受的数据我存session里面了 所以我在message里面添加几句代码

如果想刷新重新链接websocket 可以在App.vue页面里添加个钩子函数
在这里插入图片描述

客户端主动关闭websocket 在关闭的地方触发函数就行 web是import引入的开头的js文件
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值