一种即时数据传输方法及系统技术方案

技术编号:26504355 阅读:17 留言:0更新日期:2020-11-27 15:31
本发明专利技术公开了一种即时数据传输方法及装置,建立浏览器页面与websocket服务器之间的套接字连接,以及浏览器页面与服务器的发送事件的连接;利用websocket服务器推送数据到浏览器页面;通过浏览器页面的事件触发机制,根据业务需求对websocket服务器推送数据进行过滤,并将过滤后的数据展示给浏览器用户;响应于浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;若校验数据与过滤后的数据一致,通过websocket服务器进行数据传输,若不一致,执行http协议请求进行数据展示。本发明专利技术合理利用websocket协议进行展示数据接收,利用服务器发送事件进行校验数据接收,对比校验数据与展示数据,利用http协议对数据进行纠正,用较低的延迟解决了前后端数据不一致的问题。

【技术实现步骤摘要】
一种即时数据传输方法及系统
本专利技术涉及通信
,特别是涉及一种即时数据传输方法及系统。
技术介绍
现有的即时数据通信主要有通过websocket协议传输数据,单独通过http协议轮询传输数据。先通过websocket协议传输数据,websocket连接出现问题时,再启用http协议轮询传输数据三种方式。单独使用websocket协议时,如果websocket连接出现问题,则会导致浏览器页面展示数据与后端实际数据不一致。而单独使用http轮询传输数据,不仅浪费服务器资源,而且数据传输延迟时间较长。而先通过websocket协议传输在通过http协议传输,需要人为设定一个延迟来触发http协议轮询,对于要求低延迟的场景不能够满足需求。因此,如何在即时数据传输领域使用较少的服务器资源、较低的传输延迟,解决前后端数据不一致的问题是目前研究的重点。
技术实现思路
针对于上述问题,本专利技术提供一种即时数据传输方法及系统,实现了用较低的延迟解决了前后数据不一致的问题。为了实现上述目的,本专利技术提供了如下技术方案:一种即时数据传输方法,包括:建立浏览器页面与websocket服务器之间的套接字连接;建立所述浏览器页面与服务器的发送事件的连接;利用所述websocket服务器推送数据到所述浏览器页面;通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户;响应于所述浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;若所述校验数据与所述过滤后的数据一致,则通过所述websocket服务器进行数据传输,若不一致,执行http协议请求展示数据给所述浏览器用户。可选地,所述利用所述websocket服务器推送数据到所述浏览器页面,包括:通过所述websocket服务器将需要传输的数据封装为json格式数据;基于websocket协议或者http协议将所述json格式数据传输至所述浏览器页面。可选地,所述通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户,包括:将所述浏览器页面按照预设的json数据的关键字记为事件名称触发事件,并将关键字的值记为事件参数,获得到所述浏览器页面的事件触发机制的事件信息;利用所述事件信息和业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户。可选地,所述方法还包括:响应于所述浏览器接收到过滤后的数据,将已经传输的数据进行缓存;对缓存后的数据进行去重处理,得到去重后的数据。可选地,所述执行http协议请求展示数据给所述浏览器用户,包括:响应于所述浏览器页面执行http协议请求最先全量展示数据,将所述全量展示数据展示给所述浏览器用户的同时,接收websocket协议传输的增量数据。一种即时数据传输装置,包括:第一建立单元,用于建立浏览器页面与websocket服务器之间的套接字连接;第二建立单元,用于建立所述浏览器页面与服务器的发送事件的连接;推送单元,用于利用所述websocket服务器推送数据到所述浏览器页面;过滤单元,用于通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户;获取单元,用于响应于所述浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;校验单元,用于若所述校验数据与所述过滤后的数据一致,则通过所述websocket服务器进行数据传输,若不一致,执行http协议请求展示数据给所述浏览器用户。可选地,所述推送单元包括:封装子单元,用于通过所述websocket服务器将需要传输的数据封装为json格式数据;传输子单元,用于基于websocket协议或者http协议将所述json格式数据传输至所述浏览器页面。可选地,所述过滤单元具体用于:将所述浏览器页面按照预设的json数据的关键字记为事件名称触发事件,并将关键字的值记为事件参数,获得到所述浏览器页面的事件触发机制的事件信息;利用所述事件信息和业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户。可选地,所述装置还包括:缓存单元,用于响应于所述浏览器接收到过滤后的数据,将已经传输的数据进行缓存;处理单元,用于对缓存后的数据进行去重处理,得到去重后的数据。可选地,所述校验单元包括:展示子单元,用于响应于所述浏览器页面执行http协议请求最先全量展示数据,将所述全量展示数据展示给所述浏览器用户的同时,接收websocket协议传输的增量数据。相较于现有技术,本专利技术提供了一种即时数据传输方法及装置,建立浏览器页面与websocket服务器之间的套接字连接;建立浏览器页面与服务器的发送事件的连接;利用websocket服务器推送数据到浏览器页面;通过浏览器页面的事件触发机制,根据业务需求对websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户;响应于浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;若校验数据与过滤后的数据一致,则通过websocket服务器进行数据传输,若不一致,执行http协议请求展示数据给浏览器用户。本专利技术合理利用websocket协议进行展示数据接收,利用服务器发送事件进行校验数据接收,并对比校验数据与展示数据,最后利用http协议对数据进行纠正,用较低的延迟解决了前后端数据不一致的问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例提供的一种即时数据传输方法的流程示意图;图2为本专利技术实施例提供的一种即时数据传输装置的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的说明书和权利要求书及上述附图中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有设定本文档来自技高网...

【技术保护点】
1.一种即时数据传输方法,其特征在于,包括:/n建立浏览器页面与websocket服务器之间的套接字连接;/n建立所述浏览器页面与服务器的发送事件的连接;/n利用所述websocket服务器推送数据到所述浏览器页面;/n通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户;/n响应于所述浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;/n若所述校验数据与所述过滤后的数据一致,则通过所述websocket服务器进行数据传输,若不一致,执行http协议请求展示数据给所述浏览器用户。/n

【技术特征摘要】
1.一种即时数据传输方法,其特征在于,包括:
建立浏览器页面与websocket服务器之间的套接字连接;
建立所述浏览器页面与服务器的发送事件的连接;
利用所述websocket服务器推送数据到所述浏览器页面;
通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户;
响应于所述浏览器页面接收新的websocket服务器推送数据,获取服务器的校验数据;
若所述校验数据与所述过滤后的数据一致,则通过所述websocket服务器进行数据传输,若不一致,执行http协议请求展示数据给所述浏览器用户。


2.根据权利要求1所述的方法,其特征在于,所述利用所述websocket服务器推送数据到所述浏览器页面,包括:
通过所述websocket服务器将需要传输的数据封装为json格式数据;
基于websocket协议或者http协议将所述json格式数据传输至所述浏览器页面。


3.根据权利要求1所述的方法,其特征在于,所述通过所述浏览器页面的事件触发机制,根据业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户,包括:
将所述浏览器页面按照预设的json数据的关键字记为事件名称触发事件,并将关键字的值记为事件参数,获得到所述浏览器页面的事件触发机制的事件信息;
利用所述事件信息和业务需求对所述websocket服务器推送数据进行过滤处理,并将过滤后的数据展示给浏览器用户。


4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述浏览器接收到过滤后的数据,将已经传输的数据进行缓存;
对缓存后的数据进行去重处理,得到去重后的数据。


5.根据权利要求1所述的方法,其特征在于,所述执行http协议请求展示数据给所述浏览器用户,包括:
响应于所述浏览器页面执行http协议请求最先全量展示数据,将所述全量展示数据展示给所述浏览器用户的同时,接收websocket协议传输的增...

【专利技术属性】
技术研发人员:王星哲
申请(专利权)人:北京焦点新干线信息技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1