概述
背景
在实现 WebSocket
前端接收前,我们先说明白一件事,为什么要使用WebSocket?
这要从 HTTP
协议说起,我们知道 HTTP
协议只能由客户端发起,而且是短链接,这就会导致我们在服务端拿到最新的数据时,没办法第一时间通知客户端。诸如我们当前涉及物联网设备数据展示的场景,用户一般都会要求看到的设备数据是最新的,这是一个极其正常的需求。那么针对这一简单的需求,我们一般会怎么做?实际项目中,在没接触 WebSocket
前(讲真,在那年少无知的蛮荒时代,我们甚至让用户手动刷新页面,或者前端定时刷新页面以获取最新的设备数据,eg: 1分钟、3分钟、5分钟、10分钟),我们使用的是基于 HTTP
协议的AJAX请求轮询,这种方式简单、直接但不那么有效,因为存在以下缺点:
- 相对来说,前端轮询得到的数据不一定是最新的,至于数据到底有多新这取决于轮询的间隔;
- 针对轮询,每次的请求并不总是有效的;因为设备的数据可能根本没变化,可前端还是无休止的发送
AJAX
请求,白白浪费掉大量的带宽与计算资源;
针对上述 AJAX
请求轮询方案存在的问题,当前主流的解决方案便是采用WebSocket服务端推送技术。 WebSocket
是 HTML5
最后
以上就是怕黑巨人为你收集整理的物联网设备数据流转之数据如何实时推送至前端:WebSocket前端接收的全部内容,希望文章能够帮你解决物联网设备数据流转之数据如何实时推送至前端:WebSocket前端接收所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复