一、简述

因为身边许多同学都在使用WebSocket来做即时通讯功能,本人也是非常感兴趣的。在网上寻找发现多多少少有点缺陷,要么就是没有心跳检测机制,如果不存在检测,那么网络突然断开,造成的后果就是client、server可能还在傻乎乎的发送无用的消息,浪费了资源。要么就是一顿C V操作下来报错不能用。今天我就手摸手嘴对嘴教你使用WebSocket在学不会的话那你真的是没救了。

二、什么是WebSocket

WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。

WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。

三、Vue中使用WebSocket

首先肯定是实列化WebSocket

实列化成功之后调用WebSocket的钩子函数
实例对象的所有属性和方法清单,参见说明文档。

实例对象的onmessage属性,用于指定收到服务器数据后的回调函数。
我们还需要一个重新链接的函数,这个可以根据自己的项目需求,可要可不要。

我们可能还需要一个WebSocket的心跳检测函数,防止在断网,或者网络波动的情况下断开连接。没有这个心跳函数的话,客户端就会与服务端失去联系,而我们也不知道就会造成很多无用的操作。

四、效果

如果显示了服务器发送过来的数据,那么代表WebSocket全程通了。但是我这里的服务器链接是别人免费提供的每天只有50次接发送信息的次数。这个demo 客户端发送什么服务器,服务器就会返回一样的数据给你。只要能够接收到服务器端发送过来的数据就表示没问题。

五、WebSocket Demo地址

地址请点击👉 WebSocket Demo
这边文章对你有帮助的话记得点赞。

更多推荐

Vue中使用Websocket通讯协议