一、安装
npm install sockjs-client --save
npm install stompjs --save
二、使用
import SockJS from 'sockjs-client';
import Stomp from 'stompjs';
methods: {
// 初始化参数
initWebSocket(){
this.connection();
let self = this;
// 断开重连机制, 尝试发送信息, 捕获异常发生时重连
this.timer = setInterval(() => {
try {
self.stompClient.send('test');
} catch (error) {
console.info("断线了:" + error);
self.connection();
}
}, 5000);
},
// 建立连接
connection(){
let orderId = '2006876567565656565654';
// 建立连接对象
// 连接服务端提供的通信接口,连接以后才可以订阅广播信息和个人信息
this.socket = new SockJS(`http://22.0.157.40:10020/business-h5/orders/ws`);
// 获取STOMP子协议的客户端对象
this.stompClient = Stomp.over(this.socket);
// 定义客户端的认证信息,按需求配置
let headers = {};
// 向服务器发起websocket连接
this.stompClient.connect(headers, () => {
// 订阅服务端提供的某个topic
this.stompClient.subscribe('/status', (response) => {
console.info(response.body);
});
}, (err) => {
// 连接发生错误时的处理函数
console.info('失败');
});
},
// 断开连接
disconnect(){
if (this.stompClient != null) {
this.stompClient.disconnect();
console.info("Disconnected");
}
}
},
beforeDestory(){
// 页面离开时断开连接,清除定时器
this.disconnect();
clearInterval(this.timer);
}
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
- 找不到素材资源介绍文章里的示例图片?
- 对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
- 模板不会安装或需要功能定制以及二次开发?
- 请QQ联系我们
发表评论
还没有评论,快来抢沙发吧!