当前位置:   article > 正文

vue跨域使用websocket_在vue中使用SockJS实现webSocket通信的过程

sockjs跨域

最近接到一个业务需求,需要做一个聊天信息的实时展示的界面,这就需要和服务器端建立webSocket连接,从而实现数据的实时获取和视图的实时刷新.在此将我的实现记录下来,希望可以给有同样需求的人一些帮助.废话少说,下面我就来讲一下我的实现过程:

socksjs

•客户端和服务器端api尽可能简洁,尽量靠近websocket api

•支持服务端扩展和负载均衡技术

•传输层应该全面支持跨域通信

•如果受到代理服务器的限制,传输层能优雅地从一种方式回退到另一种方式

•尽可能快地建立连接

•客户端只是纯粹的JavaScript,不需要flash

•客户端JavaScript必须经过严格的测试

•服务器端代码尽可能简单,降低用另一种语言重写server的代价

前提

要进行文章中的代码的测试,需要服务端端开发人员配合你,提供相关的通信接口.来完成客户端和服务端的通信.实现通信,我们需要用到另个模块 sockjs-client 模块和 stomjs 模块,接下来我会先对这两个模块做一个简单的介绍.

关于实时通信

实现实时通信,我们通常有三种方法:

ajax轮询 ajax轮询的原理非常简单,让浏览器每隔几秒就像服务器发送一个请求,询问服务器是否有新的信息.

http 长轮询 长轮询的机制和ajax轮询差不多,都是采用轮询的方式,不过才去的是阻塞模型(一直打电话,没收到就不挂电话),也就是说,客户端发起链接后,如果没有消息,就一直不返回response给客户端.知道有新的消息才返回,返回完之后,客户端再此建立连接,周而复始.

WebSocket WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议.在WebSocket API中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/814746
推荐阅读
相关标签
  

闽ICP备14008679号