掌桥专利:专业的专利平台
掌桥专利
首页

一种网页实时同步方法及系统

文献发布时间:2024-04-18 19:59:31


一种网页实时同步方法及系统

技术领域

本发明涉及通信领域,尤其涉及一种网页实时同步方法及系统。

背景技术

在网页和基于网页的应用程序快速发展的前提下,网页同步为用户之间的交流提供了极大的便利,用户在网页画面保持同步的状态下进行交流,体验非常好,广泛应用于客户交流、网络会议等领域。

但现有网页同步技术中,针对与服务器有交互的网页进行网页同步时却存在许多问题,如采用传递网页操作指令实现网页同步的方式,该技术通过采集同步者针对网页的操作,然后将所采集操作转化为指令发送至被同步者,由被同步者执行相同指令达到相同的网页浏览效果,当所发送指令包含调用服务器端操作指令时,相关服务器操作指令会被同步者二次调用,由此导致运行混乱;如采用传递网页数据的方式,该种方式通过同步网页数据达到同步效果,同步者如发送部分网页数据至被同步者,被同步者因未获得完整权限导致无法执行某些操作,同步者如发送全部网页数据至被同步者,导致同步者数据、权限完全泄露。因此,针对动态网页的网页同步问题亟待解决。

发明内容

本申请有鉴于上述现有的状况,提供了一种网页实时同步方法、系统,解决动态网页、静态网页(包含有服务器端执行请求的网页)同步问题。

第一方面,本申请提供了一种网页实时同步方法,应用于网页实时同步系统,所述网页实时同步系统包含第一网页以及至少一个第二网页,本申请实现从所述第一网页至第二网页的同步,包括:

监听所述第一网页中的网页操作,根据所述网页操作执行以下判断:

A.当判断第二网页当前的运行环境(本地数据、网页资源等)满足所述网页操作在所述第二网页中执行的必要条件时,将所述网页操作转化为网页操作指令数据并作为第一同步数据发送至所述第二网页;

B.当判断第二网页当前的运行环境(本地数据、网页资源等)不满足所述网页操作在所述第二网页中执行的必要条件时,读取最新的同步基准网页数据,对所述网页操作执行后的网页数据与最新的同步基准网页数据进行差异化分析,计算获得差异化网页数据并作为第一同步数据发送至第二网页;

同时,将所述第一网页当前网页数据保存为最新的同步基准网页数据;

所述第二网页接收所述第一同步数据并判断其类型,当判断结果为网页操作指令数据时,将所述网页操作指令数据还原为网页操作指令并执行;当判断结果为差异化网页数据时,解析所述差异化网页数据并基于所述差异化部分对第二网页数据进行更新,使所述第二网页与第一网页用于显示部分的网页数据保持一致。

通过本申请实施例提供的方案,可使在所述第一网页执行操作后,所述第二网页与所述第一网页保持同步效果。

在本申请的一种实现方式中,所述计算获得差异化网页数据的步骤还包括,根据对所述第一网页操作执行后的网页数据与最新的同步基准网页数据差异化分析的结果,提取包含差异化部分的局部数据或者全部数据作为差异化网页数据。

在本申请的一种实现方式中,所述监听所述第一网页中的网页操作步骤之后,还包括,所述网页操作中包含网页资源文件请求且所述网页资源文件请求需要授权访问时,根据所述网页请求获取资源文件并在服务器端存储,生成新的资源文件网址,并在生成所述差异化网页数据步骤中,使用所述新的资源文件网址替换原资源文件网址。

在本申请的一种实现方式中,所述第一网页发送所述第一同步数据之前,还可包括:

对所述第一同步数据进行处理,所述处理包括删除、修改、增加中的一种或多种;

检查所述第一网页与第二网页的同步控制开关状态,当两者均为开启时,允许所述第一网页发送所述第一同步数据;

在所述第一同步数据中加入同步状态标识信息,所述同步标识信息用于标识本次同步操作,其具有顺序且不重复;

在所述第一同步数据中加入同步开关控制指令;

在所述第一同步数据中加入删除本地网页数据指令;;

在所述第一同步数据中加入同步控制授权指令;

在所述第一同步数据中加入通知信息。

在本申请的一种实现方式中,所述第二网页接收所述第一同步数据之后,还包括:

从所述第一同步数据中读取所述同步标识信息;

从所述第一同步数据中读取所述同步开关控制指令,并设置所述第二网页的同步开关;

从所述第一同步数据中读取所述删除本地网页数据指令,对所述第二网页本地网页数据进行删除;

从所述第一同步数据中读取所述同步控制授权指令,授权所述第二网页进行同步控制;

从所述第一同步数据中读取通知信息并显示;

接收所述第一同步数据并对其缓存处理。

第二方面,本申请提供一种网页实时同步方法,应用于网页实时同步系统,所述网页实时同步系统包含第一网页以及至少一个第二网页,本申请还实现从所述第二网页至第一网页的同步,包括:

监听所述第二网页中的网页操作,所述网页操作类型包括用户操作、非用户操作两种,当判断所述网页操作类型为用户操作时,执行以下步骤:

捕获所述用户操作并停止其在所述第二网页中执行,将所述用户操作转化为网页操作指令数据并作为第二同步数据发送至所述第一网页,或者,捕获所述用户操作后,进一步判断第二网页当前的运行环境(本地数据、网页资源等)是否满足所述网页操作在所述第二网页中执行的必要条件,如果是,则执行所述网页操作,将其转化为网页操作指令数据并作为第二同步数据发送至所述第一网页,同时携带所述第二网页已完成执行的通知,如果否,则将所述网页操作转化为网页操作指令数据并作为第二同步数据发送至所述第一网页;

所述第一网页接收所述第二同步数据,将所述第二同步数据中的网页指令数据还原为网页操作指令并执行。

通过本实施例提供的方案,可使得用户在所述第二网页执行操作后,所述第一网页与所述第二网页保持同步效果。

在本申请的一种实现方式中,所述第二网页发送所述第二同步数据之前,还可包括:

在所述第二同步数据中加入控制权申请指令;

在所述第二同步数据中加入控制权移交指令;

在所述第二同步数据中加入同步开关状态信息;

在所述第二同步数据中加入同步执行结果数据,所述同步执行结果数据包含同步标识信息、同步执行结果、同步执行结果相关数据中的一种或多种。

在本申请的一种实现方式中,所述第一网页接收所述第二同步数据之后,还包括:

从所述第二同步数据中读取控制权申请指令,执行是否授予所述第二网页控制权操作;

从所述第二同步数据中读取控制权移交指令,执行回收所述第二网页的控制权操作;

从所述第二同步数据中读取同步开关状态信息,更新所述第一网页中保存的所述第二网页同步开关状态信息;

从所述第二同步数据中读取同步执行结果数据,解析所述执行结果,并更新所述第一网页中保存的所述第二网页的同步执行结果数据。

第三方面,本申请提供了一种网页实时同步系统,所述系统包括:第一网页、至少一个第二网页、同步服务器,所述第一网页包括第一同步单元、第一网页内容,所述第二网页包括第二同步单元、第二网页内容,其中,

第一同步单元,所述第一同步单元包括网页操作监听模块、网页操作分析模块、网页操作指令转化模块、网页数据差异化分析模块、网页数据同步管理模块、第一同步数据通信模块,所述网页操作监听模块监听所述第一网页的网页操作;所述网页操作分析模块分析所述网页操作,当判断第二网页当前的运行环境(本地数据、网页资源等)满足所述网页操作在所述第二网页中执行的必要条件时,则调用所述网页操作指令转化模块将所述网页操作转化为网页操作指令数据并作为第一同步数据,否则,由所述网页数据差异化分析模块读取最新的同步基准网页数据,同当前的网页数据进行比较分析,计算获得差异化网页数据并作为第一同步数据;同时,将所述第一网页当前的网页数据保存为最新的同步基准网页数据;所述第一同步数据通信模块将所述第一同步数据发送至所述同步服务器;

同步服务器,用于从所述第一网页接收所述第一同步数据,并将所述第一同步数据发送至所述第二网页;

第二同步单元,所述第二同步单元包括第二同步数据通信模块、同步数据解析模块、网页操作指令转化模块、网页操作指令执行模块、网页差异化数据更新模块,所述第二同步数据通信模块从所述同步服务器接收所述第一同步数据,并由所述同步数据解析模块进行解析,当所述解析结果包含网页操作指令数据时,由所述网页操作指令转化模块将所述网页操作指令数据转化为网页操作指令并由所述网页操作指令执行模块调用执行,当所述解析结果包含差异化网页数据时,由所述网页差异化数据更新模块基于所述差异化网页数据对第二网页数据进行更新,使所述第二网页与第一网页用于显示的网页数据保持一致。

在本申请的一种实现方式中,所述第二同步单元还包括网页操作监听模块、网页操作分析模块,所述网页操作监听模块监听到所述第二网页中的网页操作后,判断所述第二网页的同步控制权限与网页操作执行权限,当具有同步控制权限但不具有网页操作执行权限时停止其在所述第二网页中执行,并调用所述网页操作指令转化模块将所述用户操作转化为网页操作指令数据并作为第二同步数据发送至同步服务器,当具有同步控制权限且具有网页操作执行权限时,进一步调用所述网页操作分析模块判断第二网页当前的运行环境是否满足所述网页操作在所述网页操作中执行的必要条件,如果是,则首先执行所述网页操作并调用所述网页操作指令转化模块将其转化为网页操作指令数据作为第二同步数据发送至同步服务器,同时携带第二网页已完成执行的通知,如果否,调用所述网页操作指令转化模块将其转化为网页操作指令数据作为第二同步数据发送至同步服务器;

所述同步服务器还用于从所述第二网页接收所述第二同步数据,并将所述第二同步数据发送至所述第一网页;

所述第一网页接收所述第二同步数据后,由所述网页操作指令转化模块将所述网页操作指令数据转化为网页操作指令,所述第一同步单元还包括网页操作指令执行模块,用于执行所述网页操作指令。

第三方面或第三方面的任意一种实现方式是第一方面或第一方面任意一种实现方式、第二方面或第二方面任意一种实现方式的实现,在此不再赘述。

可见,在以上各个方面,当监听到网页操作时,首先对网页操作的性质、依赖性和作用效果进行分析,然后选择采用网页操作指令还是网页数据的形式同步至另一端网页,实现了最小、最有效的数据传输,同时保护了执行操作端的网页数据的私密部分不被泄露,提升了安全性。

附图说明

图1为本申请提供的一种网页实时同步方法的活动图;

图2为本申请实施例提供的一种网页实时同步方法的活动图;

图3为本申请实施例提供的一种网页操作类型划分示意图;

图4为本申请实施例提供的一种网页操作性质按照网页操作执行的必要条件划分示意图;

图5为本申请实施例提供的一种网页数据分类方式示意图;

图6为HTML DOM树状结构示意图;

图7为本申请实施例提供的一种用于记录同步基准网页数据的数据结构示意图;

图8为本申请实施例提供的另一种网页实时同步方法的活动图;

图9为本申请实施例提供的另一种网页实时同步方法的活动图;

图10为本申请实施例提供的一种网页实时同步系统模块示意图;

具体实施方式

本申请的实施方式部分仅用于对本申请进行解释,而非旨在限制本申请。

以下,参考附图,详细地说明本申请的优选实施方式。

实施例一,如图2所示,本申请提供一种网页实时同步方法,方法包括:

步骤S201,所述第一网页监听网页操作;

步骤S202,对所监听到的网页操作性质进行分析,所述网页操作性质分析包括执行所述网页操作的必要条件、所述网页操作执行后的作用效果(所述作用效果即对网页数据的改变)两部分;

根据所述步骤S202的网页操作性质分析,执行步骤S203判断,当判断第二网页当前的运行环境(本地数据、可获取的网页资源等)满足所述网页操作在所述第二网页中执行的必要条件时,即符合条件S2031时,则执行步骤S204操作,将所述网页操作转化为网页操作指令数据;当判断第二网页当前的运行环境(本地数据、可获取的网页资源等)不满足所述网页操作在所述第二网页中执行的必要条件时,即符合条件S2032时,则执行步骤S205操作,读取最新的同步基准网页数据,然后执行步骤S206操作,对所述网页操作执行后的网页数据与步骤S205读取的最新的同步基准网页数据进行差异化分析,计算获得差异化网页数据;

根据步骤S204生成的网页操作指令数据、步骤S206生成的差异化网页数据,在所述网页操作已经执行完成的基础上,执行步骤S207、步骤S208操作;

步骤S207,将所述第一网页当前网页数据保存为最新的同步基准网页数据;

步骤S208,根据步骤S204生成的网页操作指令数据、步骤S206生成的差异化网页数据生成第一同步数据,并加入同步数据类型标识;

步骤S209,将所述第一同步数据发送至同步服务器;

步骤S210,所述同步服务器接收所述第一同步数据,并发送至所述第二网页;

步骤S211,所述第二网页接收所述第一同步数据;

步骤S212,所述第二网页接收所述第一同步数据并判断其类型,当判断结果为网页操作指令数据时,即符合条件S2121时,执行步骤S213操作,将所述网页操作指令数据还原为网页操作指令,进一步执行步骤S214操作,执行所述网页操作指令;当判断结果为差异化网页数据时,即符合条件S2122时,执行步骤S215操作,解析所述差异化网页数据,进一步执行步骤S216操作,基于所述差异化部分对第二网页数据进行更新。

根据以上步骤,所述第一网页发生操作,达到了所述第二网页与所述第一网页保持同步的目的。

其中,所述网页操作包括可引起网页显示、网页数据发生变化的任意网页操作(但不包括本申请内相关实现所构成的网页操作,如:不包括所述第一网页与所述同步服务器或所述第二网页之间的通信所构成的网页操作、不包括所述网页操作指令执行所构成的网页操作、不包括所述同步开关控制所构成的网页操作等,该类网页操作不在同步范围内,应由本申请方法直接处理),如图3所示,将所述网页操作类型分为用户操作类型、非用户操作类型,所述用户操作类型指用户针对网页的操作,包括点击、拖拽、拖动、输入等;所述非用户操作类型指非用户引起的网页程序自动执行的网页操作,包括定时器执行程序、网页加载触发的执行程序、浏览器触发的执行程序、异步执行程序、外部触发的执行程序、回调执行程序等,如:定时器按照计时触发某程序执行、网页加载完成执行某程序、因网络连接状态发生改变触发的程序执行、因外部数据传输引起的自动执行程序、服务器指令执行完成后执行某回调程序等。

另外,步骤S202中所述网页操作性质分析主要为针对执行所述网页操作所需的必要条件进行分析,目的在于,判断在所述第一网页中发生的网页操作,如果在第二网页中执行,所述第二网页当前的运行环境(包括本地数据、可获取的网络资源等)是否能够达到执行的必要条件。关于网页操作性质针对执行所述网页操作的必要条件的划分,如图4所示的一种网页操作性质判断方式,分为:可在第二网页当前的运行环境执行、不可在第二网页当前的运行环境执行两种类型,所述可在第二网页当前的运行环境执行包括未向服务器发送任何请求(即:仅依赖第二网页本地数据执行)、向服务器发送过资源类请求且所发送请求不需要使用第一网页权限进行请求;所述不可在第二网页当前的运行环境执行包括向服务器发送过网络资源类请求且需使用第一网页权限进行请求、向服务器发送过非网络资源类请求等。

其中,步骤S206中所述网页数据,指网页相关的所有数据,参考图5所示的一种网页数据分类方式,将网页数据划分为网页元素(Elements)、网页资源(Sources)、本地网页数据三大类,其中所述网页元素包括HTML、Script、其它网页元素,所述HTML即浏览器获取的HTML文档,参考图6,可由DOM将其表达为树结构;所述网页资源指网页运行时可获取的网页资源文件,一般网页资源有对应的网址(部分网页资源不采用网址形式,如图片Base64编码、视频流等),所述网页资源包括图片资源、CSS资源、JS文件资源、声音资源、视频资源、文本资源等;所述本地网页数据即在网页运行过程中网页程序内部数据、浏览器运行环境中存放的数据,如:Cookies、本地程序内部变量、本地存储(LocalStorage、SessionStorage、CacheStorage)、本地数据库、应用程序相关数据(Manifest、Application Cache)等。

步骤S205、步骤S207中所述同步基准网页数据,为同步过程中某个同步阶段记录的网页数据,所述第一网页、第二网页在该同步阶段基于同步基准网页数据同步。同步过程中,当判断所述网页操作引起网页数据发生改变时,则需将新的网页数据计入同步基准网页数据并更新其网页同步标识信息,所述网页同步标识信息用于标识一次同步操作。在实际实施中,可选择在网页操作完成后,执行同步操作的前或后更新同步基准网页数据。一种可能的实施方式中,如图7所示,提供了一种用于记录同步基准网页数据的数据结构,其为一个树状结构,包括网页元素、网页资源、本地数据三个分支,其中网页元素分支内采用HTML DOM树的结构;网页资源分支可按照资源类型(如CSS、jpg、png)或所述网页资源的来源(即网址所包含的域名)建立子分支,详细的网页资源数据一般采用网址形式存放;本地数据根据本地数据的类型建立子分支,包括Cookies、Application、Cache、Storage、Database、本地程序内部变量分支等。根据所述数据结构参考,并为树上的每个节点建立节点标识。本申请方法在所述第一网页中保存所述同步基准网页数据变量,所述变量基于上述数据结构、对应当前网页同步标识信息为每个节点存放最新网页数据。可选地,在所述同步基准网页数据更新前,将所述更新节点的节点标识、所述更新节点更新前保存的网页数据内容、网页同步标识信息等计入历史同步网页数据(可采用缓存方式记录),用于为不同的同步阶段之间计算所述差异化网页数据提供数据支持。

步骤S206中,所述差异化网页数据为所述网页操作发生后当前网页数据与最新的同步基准网页数据之间的差异化部分或包含差异化部分的集合。一种可能的实施方式中,结合上述提供的同步基准网页数据存储结构,所获得的差异化网页数据为发生变化的节点集合,差异化内容至少包括节点标识、改变性质、改变的网页数据内容,如图7所示节点0011221中存储的内容发生变化、节点00361中存储的变量A被删除、节点0022中新增节点00222,则所述差异化网页数据包括下表内容:

所述改变的网页数据内容根据改变性质按照相应的规则进行存储,如上表0011221节点的改变性质为“修改”,改变的网页数据内容为修改后的内容;节点00361的改变性质为“删除”,则改变的网页数据内容为空;节点00222的改变性质为“增加”,则改变的网页数据内容父节点标识。

另外,所述步骤S209中所述第一网页发送所述第一同步数据、步骤S210中所述同步服务器接收所述第一同步数据、步骤S211中所述第二网页接收所述第一同步数据,采用WebSocket通信协议进行通信。

所述步骤S212所述第二网页接收所述第一同步数据并判断其类型,判断方式包括根据步骤S208中预先加入的同步数据类型标识判断或根据所述第一同步数据的内容判断。

所述步骤S213中将所述网页操作指令数据还原为网页操作指令,其还原方式对应于网页操作指令生成为网页操作指令数据的生成方式。

所述步骤S214中执行所述网页操作指令,即通过Javascript调用所述网页操作指令对应的函数,达到与所述第一网页操作完全一致的效果,例如:所述第一网页针对某按钮的点击操作,在步骤S214中可通过调用该按钮属性内附加的onclick函数、调用该按钮click事件实现(如:document.getElementById("XX").click())等。

所述步骤S215中解析差异化网页数据,从所述第一同步数据中获取所述差异化数据,并根据所述差异化数据的生成方式对应的方法进行解析,如以上的一种实施方式中,解析所获得的结果至少包括节点、改变性质、改变的网页数据内容,然后,在所述步骤S216中,根据所述节点、改变性质、改变的网页数据内容中所包含的信息,分析获得操作节点位置、操作函数、操作参数数据,针对所述节点位置基于所述操作参数数据调用所述操作函数执行更新操作,如上表中的差异化网页数据,则查找获得节点0011221位置后,调用修改方法,用内容“

abc
”替换现有节点内容;查找获得节点00361,调用删除方法,删除该节点;查找获得父节点0022,在其下插入新节点00222。

在一种可选的实施方式中,对应步骤S206,计算差异化网页数据还包括提取包含差异化部分的局部数据或者全部数据作为差异化网页数据,如上表节点0011221因修改发生差异,可提取0011221节点、001122节点、00112节点、0011节点、001节点、全部网页数据的任一作为差异化网页数据。

在一种可选的实施方式中,经步骤S202进行网页操作性质分析,当判断所述网页操作中包含网页资源文件请求且所述网页资源文件请求需要授权访问时,即该类网页资源仅能由所述第一网页利用权限访问,所述第二网页无法直接访问,则进行以下处理:所述第一网页利用权限,根据所述网页请求获取资源文件并发送至第二网页有权限访问的服务器端进行存储,生成新的资源文件网址,并在所述差异化网页数据中,使用所述新的资源文件网址替换原资源文件网址。以上处理为第二网页提供了新的网页资源,取代其无权限访问的网页资源,所述第二网页访问后可利用浏览器对新的网页资源进行缓存,避免了在同步过程中频繁发送大量的网页资源内容数据。

在一种可选的实施方式中,步骤S208生成第一同步数据还包括以下处理:

i.对所述第一同步数据进行处理,所述处理包括删除、修改、增加中的一种或多种。

所述第一网页拥有对同步内容的控制权,如屏蔽某些内容的同步操作、因同步数据中包含密码等隐私信息需在同步之前进行替换(手动或自动)、在所述第一同步数据中加入同步数据类型标识(用于标识网页指令数据、网页差异化数据类型)等。ii.检查所述第一网页与第二网页的同步开关状态,当两者均为开启时,允许所述第一网页发送所述第一同步数据。所述第一网页可获取所述第一网页以及所有第二网页的同步开关状态信息,当所述第一网页同步开关关闭时,则取消当前网页操作的同步;当所述第二网页同步开关关闭时,则取消对该第二网页的同步信息发送。iii.在所述第一同步数据中加入同步状态标识信息,所述同步状态标识信息用于标识本次同步操作,其具有顺序且不重复。

iv.在所述第一同步数据中加入同步开关控制指令。加入该指令可实现针对所述第二网页同步开关的开启和关闭。

v.在所述第一同步数据中加入删除本地网页数据指令。加入该指令可实现对所述第二网页本地存放的网页数据进行部分或全部删除。

vi.在所述第一同步数据中加入同步控制授权指令。当所述第二网页在同步过程中申请同步操作的控制权时,加入该指令进行授权或取消授权操作;当所述第二网页交回控制权,通过该指令解除授权。

vii.在所述第一同步数据中加入通知信息。

在一种可选的实施方式中,以上第i、ii、iii、iv、v、vi、vii项可不依赖所述第一同步数据,以独立的数据或指令形式发送。

在一种可选的实施方式中,所述第二网页在步骤S211接收数据后还包括以下处理:

i.从所述第一同步数据中读取所述同步标识信息。根据所述同步标识信息和所述第二网页最后一次完成的同步操作的同步标识信息进行比较,可判断同步过程中是否存在缺失某次同步操作,进一步向所述第一网页请求所缺失的同步数据;同步操作完成后,在所述第二网页中保存该同步标识信息为所述第二网页最新的同步标识信息。ii.从所述第一同步数据中读取所述同步开关控制指令,对第二网页的同步开关进行控制。

iii.从所述第一同步数据中读取所述删除本地网页数据指令,对所述第二网页本地网页数据进行删除,包括部分或全部本地网页数据删除操作。

iv.从所述第一同步数据中读取所述同步控制授权指令,授权所述第二网页进行同步控制。

v.从所述第一同步数据中读取通知信息并显示。

vi.接收所述第一同步数据并对其缓存处理。当使用缓存时,根据所述同步标识顺序读取并处理,如上述i中判断同步过程存在缺少某次同步数据的情况,则首先将接收到的同步数据进行缓存,然后针对缺失的同步数据发起请求。

实施例二,本申请的另一种实施方式,如图8所示,本申请提供一种网页实时同步方法,方法包括:

步骤S801,所述第二网页监听网页操作;

步骤S802,对所监听到的网页操作类型进行分析,判断所述网页操作类型为用户操作或非用户操作,当判断所述第二网页当前的网页操作为非用户操作时,即符合条件S8022时,则执行步骤S803停止所述网页操作执行;当判断第二网页当前的网页操作为用户操作时,即符合条件S8021,则执行步骤S804停止所述网页操作执行,同时执行步骤S805,将所述网页操作转化为网页操作指令数据,根据所述网页操作指令数据,执行步骤S806,生成第二同步数据;

步骤S807,将所述第二同步数据发送至同步服务器;

步骤S808,所述同步服务器接收所述第二同步数据,并发送至所述第一网页;

步骤S809,所述第一网页接收所述第二同步数据;

步骤S810,将所述第二同步数据包含的网页操作指令数据还原为网页操作指令;

步骤S811,在所述第一网页中执行所述网页操作指令。

根据以上步骤,本实施方式达到了所述第二网页执行网页操作,所述第一网页与所述第二网页保持同步的目的。在本实施例中,所述第二网页中的网页操作并未在所述第二网页中直接执行,当监听到网页操作后,如判断所述网页操作属于非用户操作时会被终止执行;如判断属于用户操作时,除终止所述用户网页操作执行外,同时还将该操作发送至所述第一网页执行,所述第一网页执行所述网页操作并按照实施例一中的同步方式启动第二网页同步。另外,本实施例中所述第二网页不记录同步基准网页数据,由所述第一网页接收到所述第二网页操作指令数据后,按照实施例一的完整步骤执行维护同步基准网页数据。由此可见,本实施例中,所述第二网页的用户操作效果是间接地通过第一网页的同步完成的。

其中,所述网页操作、所述网页操作类型与实施例一中相同,在此不再赘述。

实施例三,本申请的另一种实施方式,如图9所示,本申请提供一种网页实时同步方法,方法包括:

步骤S901,所述第二网页监听网页操作;

步骤S902,对所监听到的网页操作类型进行分析,当判断第二网页当前的网页操作为非用户操作时,即符合条件S9021时,则执行步骤S903停止所述网页操作执行;当判断第二网页当前的网页操作为用户操作时,即符合条件S9022时,则执行步骤S904的判断操作;

步骤S904,进一步判断第二网页当前的运行环境(本地数据、可获取的网页资源等)是否满足所述网页操作在所述第二网页中执行的必要条件,当判断不满足所述必要条件时,即符合条件S9041时,则执行步骤S903停止所述网页操作执行;当判断满足所述必要条件时,即符合条件S9042时,则执行步骤S905操作,执行所述网页操作并生成同步标识信息,同时执行步骤S906操作,将所述网页操作转化为网页操作指令数据。

在所述步骤S906操作基础上,执行步骤S907操作,将所述网页操作指令数据生成第二同步数据,同时在所述第二同步数据中加入所述网页操作在该第二网页中已执行完成的通知和同步标识信息;

步骤S908,将所述第二同步数据发送至同步服务器;

步骤S909,所述同步服务器接收所述第二同步数据,并发送至所述第一网页;

步骤S910,所述第一网页接收所述第二同步数据;

步骤S911,将所述第二同步数据包含的网页操作指令数据还原为网页操作指令;

步骤S912,在所述第一网页中执行所述网页操作指令。

根据以上步骤,本实施方式与实施例二同样达到了所述第二网页执行网页操作,所述第一网页与所述第二网页保持同步的目的,其不同点在于,针对所述第二网页中的网页操作进行了判断,当判断为非用户操作时,终止其在所述第二网页中执行;当判断为用户操作但在所述第二网页的运行环境中无法执行时,终止所述用户操作执行,同时将该操作发送至所述第一网页执行,所述第一网页执行并按照实施例一中的同步方式启动与第二网页同步;当判断为用户操作且在第二网页的运行环境中可以执行时,则执行所述网页操作,生成同步标识信息,另外将该操作发送至所述第一网页执行,并携带当前第二网页已执行完成的通知与同步标识信息,所述第一网页执行所述网页操作并按照实施例一中的同步方式,使用所述同步标识信息,启动与其他第二网页同步。同样地,本实施例中所述第二网页不记录同步基准网页数据,由所述第一网页接收到所述第二网页操作指令数据后按照实施例一执行并维护基准网页数据,完成与其它第二网页的同步步骤。由此可见,在本实施例中,一部分用户操作是直接的,另一部分用户操作效果是间接地通过第一网页的同步完成的。

其中,所述网页操作、所述网页操作类型、所述网页操作性质与实施例一中相同,在此不再赘述。

按照本实施例的实现步骤,所述第二网页有同步控制的权限,但针对部分用户操作、所有非用户操作,所述第二网页不具有网页操作执行的权限,基于这一点,在另一种具体的实现场景中,所述第一网页首先将所述第一网页中与权限相关的网页数据发送至所述第二网页,然后授予所述第二网页完整的同步控制、网页操作执行权限,所述第二网页可临时取代所述第一网页的功能,该方式实现在同步过程中的同步控制权、网页操作权完全转移。另外,所述第一网页在收回同步控制权时,同时发送删除本地网页数据指令将所述第二网页中与权限相关的网页数据进行删除。

基于本申请实施例上述提出的网页实时同步方法,本申请实施例还提供了一种网页实时同步系统,请参考图10,该网页实时同步系统包括:第一网页1001、至少一个第二网页1002、同步服务器1003,所述第一网页包括第一同步单元10011、第一网页内容10012,所述第二网页包括第二同步单元10021、第二网页内容10022,其中,

第一同步单元10011,包括网页操作监听模块100111、网页操作分析模块100112、网页操作指令转化模块100113、网页数据差异化分析模块100114、网页数据同步管理模块100115、第一同步数据通信模块100116;

模块100111,监听网页内容10012的网页操作;

模块100112,分析所述网页操作,当判断网页1002当前的运行环境(本地数据、网页资源等)满足所述网页操作在网页1002中执行的必要条件时,则调用模块100113将所述网页操作转化为网页操作指令数据并作为第一同步数据,否则,由模块100114读取最新的同步基准网页数据,同10012当前的网页数据进行比较分析,计算获得差异化网页数据并作为第一同步数据;同时,模块100115将10012当前的网页数据保存为最新的同步基准网页数据;

模块100116,将所述第一同步数据发送至所述同步服务器1003;

服务器1003,包括同步数据通信模块10031,用于从网页1001接收第一同步数据,并将所述第一同步数据发送至网页1002;

第二同步单元10021,包括第二同步数据通信模块100211、同步数据解析模块100212、网页操作指令转化模块100213、网页操作指令执行模块100214、网页差异化数据更新模块100215;模块100211从服务器1003接收所述第一同步数据,并由模块100212进行解析,当解析结果包含网页操作指令数据时,由模块100213将所述网页操作指令数据转化为网页操作指令并由模块100214调用执行,当解析结果包含差异化网页数据时,由模块100215基于所述差异化网页数据对10022网页数据进行更新操作,使10022与10012保持同步(尤其使用于网页显示部分的网页数据保持一致)。

本申请实施例在以上网页实时同步系统基础上,还提供另一种网页实时同步系统,同样参考图10,所述同步系统在上一网页实时同步系统实施例基础上,单元10021还包括网页操作监听模块100216、网页操作分析模块100217,模块100216监听到网页内容10022中的网页操作后,判断所述网页1002的同步控制权限,当不具有控制权时停止其在10022中执行,当具有控制权时,进一步调用模块100217判断网页1002当前的运行环境(本地数据、网页资源等)是否满足所述网页操作在10022中执行的必要条件,如果是,则首先在10022中执行该网页操作,并调用模块100213将其转化为网页操作指令数据作为第二同步数据发送至服务器1003,同时携带网页1002已完成执行的通知,如果否,调用模块100213将所述网页操作转化为网页操作指令数据作为第二同步数据发送至服务器1003;

模块10031还包括用于从所述网页1002接收所述第二同步数据,并将所述第二同步数据发送至网页1001;

所述第一同步单元10011还包括网页操作指令执行模块100117,网页1001接收所述第二同步数据后,模块100113将所述网页操作指令数据转化为网页操作指令并由模块100117执行。

此外,在另一种实施场景中,单元10011还可包括同步控制模块100118,用于对网页1001进行同步控制,如:显示同步状态、检测同步开关状态、开启或关闭同步等,另外包括对网页1002的同步控制处理,如:同步控制授权处理、发送删除网页1002本地网页数据指令,还包括对网页1002返回的同步执行结果数据进行处理;单元10011还可包含第一同步数据计算生成模块100119,用于根据模块100113或模块100114输出的数据生成同步数据,以及对所述同步数据进行处理(增加、删除、修改等),还包括增加同步标识信息、增加对网页1002的通知信息处理等。

在另一种实施场景中,单元10021还可包括同步控制模块100218,用于对网页1002进行同步控制,如写入或生成同步标识信息、更新同步状态、显示同步状态、开启或关闭同步、删除本地网页数据、接收控制权、移交控制权、缓存同步数据等,还包括向网页1001发送同步结果数据与同步状态、控制权申请指令等;单元10021还可包括第二同步数据计算生成模块100219,用于根据模块100213输出的数据生成同步数据,以及对所述同步数据进行处理(增加、删除、修改等),还包括增加同步标识信息等。

在另一种实施场景中,同步服务器1003还包括同步数据处理模块10032,用于对模块100116或模块100211发送的同步数据进行处理(如增加、删除、修改、过滤等);同步服务器1003还包括同步数据存储模块10033,用于在服务器端保存同步数据。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 柱状朗缪尔探针以及适用于低密度等离子体的测量方法
  • 一种用于测量低密度冷等离子体的球形朗缪尔探针装置
技术分类

06120116519234