一种移动应用向网页同步数据的方法、系统及移动终端与流程

文档序号:22627612发布日期:2020-10-23 19:36阅读:230来源:国知局
一种移动应用向网页同步数据的方法、系统及移动终端与流程

本发明涉及信息处理技术领域,特别涉及一种移动应用向网页同步数据的方法、系统、移动终端及存储介质。



背景技术:

移动应用指设计给智能手机、平板电脑和其他移动设备上运行的软件应用程序,其中小程序应用是一种不需要下载安装即可使用的移动应用,用户通过扫描小程序二维码或者搜索小程序名称即可打开小程序应用。

小程序应用中会嵌入很多网页,在小程序应用打开网页的过程中需要移动应用与网页之间进行数据同步。例如小程序应用向网页同步用户信息后,当同一用户通过小程序应用登录该网页时,该用户无需再输入身份信息,以提高用户体验。然而目前的小程序应用没有提供向网页写数据的数据接口,这为移动应用向网页同步数据带来一定的难度。

目前小程序应用向网页同步数据主要包括两种同步方式。其一是在小程序应用中每一次打开网页时均通过网址同步数据至网页;另一种是小程序应用会在某个时机打开专用于接收同步数据的网页,在该网页中进行统一的数据存储。但是,目前小程序应用向网页同步数据的方法,易出现数据同步重复、打开专用于接收同步数据的网页时机较难找到等问题,使得用户体验差、易造成资源浪费。



技术实现要素:

为此,本发明提供了一种移动应用向网页同步数据的方法、装置、计算设备及存储介质,以力图解决或者至少缓解上面存在的至少一个问题。

根据本发明的一个方面,提供了一种移动应用向网页同步数据的方法,在移动终端中执行,移动终端包括网页组件和移动应用,移动应用中存储有数据同步标识,方法包括:

移动应用根据数据同步标识确定需要向目标网页同步数据;

移动应用生成网址发送到网页组件,网址包括与所述目标网页对应的目标网址、中转服务器对应的中转网址及需要同步的数据;

网页组件基于网址向中转服务器发送请求报文,并接收中转服务器发送的响应报文;

网页组件对响应报文进行解析,得到存储同步数据的文件,并将存储同步数据的文件保存至本地;

移动应用更新数据同步标识。

可选地,移动应用将需要同步的数据与目标网址、中转网址进行拼接,得到网址。

可选地,该方法还包括:

网页组件检查存储同步数据的文件;

其中,网页组件将存储同步数据的文件保存至本地,包括:

网页组件将检查无误后的存储同步数据的文件保存至本地。

可选地,存储同步数据的文件为cookie文件。

可选地,该方法还包括:

网页组件向应用程序发送同步数据成功/失败的消息。

可选地,移动应用更新数据同步标识包括:

移动应用根据同步数据成功的消息改变数据同步标识,使其表示不需要向目标网页同步数据;

移动应用根据同步数据失败的消息保持数据同步标识不变,使其表示需要向目标网页同步数据。

可选地,数据同步标识基于同步数据成功/失败的消息和/或应用程序中是否存在发生变化的数据而确定。

可选地,网页组件对响应报文进行解析还得到跳转指令,该方法还包括:

网页组件基于跳转指令向网页服务器发送请求报文;

网页组件接收网页服务器发送的响应报文;

网页组件根据网页服务器发送的响应报文展示目标网页;或

网页组件根据网页服务器发送的响应报文和已保存至本地的存储同步数据的文件展示目标网页。

可选地,跳转指令为302跳转。

可选地,该方法还包括:

若移动应用根据数据同步标识确定不需要向目标网页同步数据;

网页组件通过目标网址向网页服务器发送请求报文;

网页组件根据网页服务器发送的响应报文展示目标网页。

可选地,网页组件为webview组件。

可选地,移动应用为小程序应用。

可选地,需要同步的数据包括以下至少之一:用户数据、定位数据和统计数据。

根据本发明的另一个方面,提供了一种移动应用向网页同步数据的系统,该系统包括:中转服务器以及与中转服务器通信连接的移动终端,移动终端包括网页组件和移动应用,移动应用中存储有数据同步标识,其中:

移动应用适于:根据数据同步标识确定需要向目标网页同步数据时,生成网址发送到网页组件,网址包括与目标网页对应的目标网址、中转服务器对应的中转网址及需要同步的数据;

网页组件适于:基于网址向所述中转服务器发送请求报文,并接收中转服务器发送的响应报文,对响应报文进行解析,得到存储同步数据的文件,并将存储同步数据的文件保存至本地;

移动应用还适于更新数据同步标识。

根据本发明的另一个方面,提供了一种移动终端,包括至少一个处理器;以及存储器,存储有程序指令,其中程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行上述方法的指令。

根据本发明的又一个方面,提供了一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得计算设备执行上述方法。

根据本发明的技术方案,首先移动应用根据数据同步标识判断是否需要向目标网页同步数据,若需要,则移动应用生成网址并发送到网页组件,网页组件基于网址向中转服务器发送请求报文,并接收中转服务器发送的响应报文,且网页组件从响应报文中得到cookie文件,并将该文件保存至本地,之后应用程序更新数据同步标识。本发明中将需要同步的数据写入cookie文件,使得需要同步的数据能够通过cookie文件传递到目标网页所在的移动终端中,以完成目标网页的数据更新,在移动应用没有提供向网页写数据的数据接口的情况下,也能够保证移动应用和目标网页的数据同步是及时可靠的。另外,目标网页及目标网页的下级网页后续均可使用已存储在移动终端的cookie文件中的数据,以完成相关的网络请求、界面渲染等业务逻辑,展示目标网页,上述方法克服了打开专用于接收同步数据的网页时机较难找到的问题。其次,在每次打开目标网页之前判断是否需要向目标网页同步数据,只有在需要同步数据的情况下才会进行数据同步,可以在保证数据同步及时可靠的前提下避免重复同步数据而造成资源的浪费。

附图说明

为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。

图1示出了根据本发明的一个实施例的移动应用向网页同步数据的系统200的示意图;

图2示出了根据本发明的一个实施例的移动终端100的示意图;

图3示出了根据本发明的一个实施例的移动应用向网页同步数据的方法300的流程图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

图1示出了根据本发明一个实施例的移动应用向网页同步数据的系统200的示意图。

如图1所示,移动应用向网页同步数据的系统200包括移动终端100、中转服务器210,在移动应用向网页同步数据的系统200外,还包括网页服务器220。其中,移动终端100分别与中转服务器210、网页服务器220通信连接,例如通过有线或无线的方式网络连接。移动终端100中包括移动应用1001和网页组件1002,所述移动应用1001例如为小程序应用。如前所述,在一些情况下,小程序应用需要向目标网页同步数据,例如用户数据、定位数据和统计数据等,但小程序应用却没有提供向网页写数据的数据接口。

于是,在本发明实施例中,设置了中转服务器210,移动应用1001需要打开目标网页时,生成包括与目标网页对应的目标网址、中转服务器210对应的中转网址及需要同步的数据的网址,将生成的网址发送到网页组件1002,网页组件1002根据该网址向中转服务器210发送网络请求,中转服务器210解析该网络请求,将同步数据和跳转指令通过网络响应发送到网页组件1002,网页组件1002一方面将同步数据存储到本地完成数据的同步,另一方面根据跳转指令向网络服务器220发送网络请求以获取网页内容,进而加载和显示网页。这样,在移动应用1001没有提供向网页写数据的数据接口的情况下,也能够实现移动应用1001和网页的数据同步。

根据本发明的一个实施例,移动应用1001需要打开目标网页时,首先判断目标网页所在的系统是否为需要同步数据的系统,若是,再根判断是否需要向目标网页同步数据。

若移动应用1001确定需要向目标网页同步数据,则搜集需要同步的数据,并生成包括需要同步的数据、目标网址(目标网页的网址)和中转服务器210ip地址的网址,发送网址至网页组件1002。网页组件1002通过该网址向中转服务器210发送请求报文,接收并响应中转服务器210发送端响应报文,得到存储同步数据的文件和跳转指令,并将该文件保存至本地,完成移动应用1001和网页的数据同步,当目标网页及目标网页的下级网页使用上述已经同步的数据时,使用本地中已存储文件的数据即可。接下来网页组件1002再根据跳转指令跳向网页服务器220发送请求报文,并接收网页服务器220发送的响应报文,网页组件1002对响应报文解析得到资源,基于该资源或基于该资源和保存至本地的存储同步数据的文件完成网页渲染,展示目标网页。

若移动应用1001根据数据同步标识确定不需要向目标网页同步数据,则网页组件1002通过目标网址向网页服务器220发送请求报文,并接收网页服务器220发送的响应报文,对响应报文进行解析得到资源,基于该资源完成网页渲染,展示目标网页。

应当指出,本发明不限制移动终端100与中转服务器210、网页服务器220的连接方式。例如,移动终端100可以通过有线或无线的方式接入互联网,并通过数据接口与中转服务器210、网页服务器220连接,从而移动终端100可以基于网络从中转服务器210中获取存储同步数据的文件、跳转指令,从网页服务器220获取目标网址对应的资源。

移动终端100即用户所使用的终端设备,其具体可以是桌面电脑、笔记本电脑等个人计算机,也可以是手机、平板电脑、多媒体设备、智能可穿戴设备等,但不限于此。

在本发明的实施例中,中转服务器210、网页服务器220可用于向移动终端100提供数据获取接口和数据分发接口,其可以实现为现有技术中的任何一种能够实现管理应用程序、与移动终端100应用进行数据交互的应用服务器。本发明对服务器的具体设备种类不作限制,例如,中转服务器210、网页服务器220可以实现为桌面电脑、笔记本电脑、处理器芯片、手机、平板电脑等计算设备,但不限于此。

在本发明的实施例中,移动终端100和中转服务器210适于执行移动应用向网页同步数据的方法300。本发明的移动应用向网页同步数据的方法300将在下文中详述。在本发明的实施例中,移动应用向网页同步数据的系统200中的中转服务器210可以有多个,多个中转服务器210构成中转服务器集群,共同提供数据同步服务。

在一个实施例中,本发明的移动应用向网页同步数据的方法300执行于移动终端100中。图2是移动终端100的结构框图,移动终端100可以包括存储器接口102、一个或多个数据处理器、图像处理器和/或中央处理单元104,以及外围接口106。

存储器接口102、一个或多个处理器104和/或外围接口106既可以是分立元件,也可以集成在一个或多个集成电路中。在移动终端100中,各种元件可以通过一条或多条通信总线或信号线来耦合。传感器、设备和子系统可以耦合到外围接口106,以便帮助实现多种功能。

例如,运动传感器110、光线传感器112和距离传感器114可以耦合到外围接口106,以方便定向、照明和测距等功能。其他传感器116同样可以与外围接口106相连,例如定位系统(例如gps接收机)、温度传感器、生物测定传感器或其他感测设备,由此可以帮助实施相关的功能。

相机子系统120和光学传感器122可以用于方便诸如记录照片和视频剪辑的相机功能的实现,其中所述相机子系统和光学传感器例如可以是电荷耦合器件(ccd)或互补金属氧化物半导体(cmos)光学传感器。可以通过一个或多个无线通信子系统124来帮助实现通信功能,其中无线通信子系统可以包括射频接收机和发射机和/或光(例如红外)接收机和发射机。无线通信子系统124的特定设计和实施方式可以取决于移动终端100所支持的一个或多个通信网络。例如,移动终端100可以包括被设计成支持lte、3g、gsm网络、gprs网络、edge网络、wi-fi或wimax网络以及blueboothtm网络的通信子系统124。

音频子系统126可以与扬声器128以及麦克风130相耦合,以便帮助实施启用语音的功能,例如语音识别、语音复制、数字记录和电话功能。i/o子系统140可以包括触摸屏控制器142和/或一个或多个其他输入控制器144。触摸屏控制器142可以耦合到触摸屏146。举例来说,该触摸屏146和触摸屏控制器142可以使用多种触摸感测技术中的任何一种来检测与之进行的接触和移动或是暂停,其中感测技术包括但不局限于电容性、电阻性、红外和表面声波技术。一个或多个其他输入控制器144可以耦合到其他输入/控制设备148,例如一个或多个按钮、摇杆开关、拇指旋轮、红外端口、usb端口、和/或指示笔之类的指点设备。所述一个或多个按钮(未显示)可以包括用于控制扬声器128和/或麦克风130音量的向上/向下按钮。

存储器接口102可以与存储器150相耦合。该存储器150可以包括高速随机存取存储器和/或非易失性存储器,例如一个或多个磁盘存储设备,一个或多个光学存储设备,和/或闪存存储器(例如nand,nor)。存储器150可以存储操作系统172,例如android、ios或是windowsphone之类的操作系统。该操作系统172可以包括用于处理基本系统服务以及执行依赖于硬件的任务的指令。存储器150还可以存储程序174。在移动设备运行时,会从存储器150中加载操作系统172,并且由处理器104执行。程序174在运行时,也会从存储器150中加载,并由处理器104执行。程序174运行在操作系统之上,利用操作系统以及底层硬件提供的接口实现各种用户期望的功能,如即时通信、网页浏览、图片管理等。程序174可以是独立于操作系统提供的,也可以是操作系统自带的。另外,程序174被安装到移动终端100中时,也可以向操作系统添加驱动模块。

在一些实施例中,移动终端100被配置为执行根据本发明的移动应用向网页同步数据的方法300。其中,移动终端100的一个或多个程序174包括用于执行根据本发明的移动应用向网页同步数据的方法300的指令。

图3示出了根据本发明的一个实施例的移动应用向网页同步数据的方法300的流程图。方法300适于在图2所示的移动终端100中执行。如图3所示,移动应用向网页同步数据的方法始于步骤s310。在步骤s310中,移动应用根据数据同步标识确定需要向目标网页同步数据。在打开目标网页之前,首先判断小程序所在系统是否需要同步数据,随后,基于小程序所在系统是否需要同步数据的判断结果判断是否向目标网页同步数据。

由于小程序中可能接入了不同网页系统的网页,有的系统中的网页需要同步数据,有的系统中的网页不需要同步数据,因此在打开网页之前移动应用1001首先根据具体的网页业务需求判断小程序所在系统是否需要进行数据同步。例如,小程序应用中接入了商城和新闻两个网页系统,商城网页系统的下单等操作是需要用户登录信息的,需要同步数据,而新闻网页系统则不需要进行数据同步。

若用户当前打开的移动应用1001所在系统不需要进行数据同步,则移动应用1001直接通过目标网址打开目标网页。其中,目标网址为目标网页所请求获取资源的定位符。若用户打开的移动应用1001所在系统需要进行数据同步,则移动应用1001响应用户打开移动应用1001的动作,判断是否需要向目标网页同步数据。本公开实施例在每次打开目标网页之前判断是否需要向目标网页同步数据,使得只有在需要同步数据的情况下才会进行数据同步,可以在保证数据同步及时可靠的前提下避免重复同步数据而造成资源的浪费。

移动应用1001根据数据同步标识判断是否需要向将要打开的目标网页同步数据,数据同步标识可用needsyncdata字段表示,而needsyncdata字段值表示数据是否需要同步数据至将要打开的目标网页。needsyncdata字段值为true或false,当needsyncdata字段值为true时,说明该数据需要向将要打开的目标网页进行同步,当needsyncdata字段值为false时,说明该数据不需要向将要打开的目标网页进行同步。

当移动应用1001判断结果为不需要向目标网页同步数据时,将目标网址发送至网页组件1002。网页组件1002根据目标网址打开目标网页。具体的,网页组件1002基于目标网址向网页服务器220发送http请求,网页服务器220解析http请求,根据目标网址获取资源,并生成响应报文,将资源通过响应报文发送给网页组件1002,网页组件1002基于资源完成网页渲染,进而展示目标网页。其中,网页组件1002可为webview组件,本发明不受限网页组件的内容,所有可以实现渲染和展示网页的网页组件都在本发明的保护范围之内。

当移动应用1001判断结果为需要向目标网页同步数据时,移动应用1001获取需要同步的数据。其中,需要同步的数据包括新用户的用户数据、定位数据和统计数据中的一种或多种,或者,需要同步的数据包括发生变化的老用户的用户数据、定位数据和统计数据中的一种或多种。例如,发生变化的用户数据包括用户注销重登录等,发生变化的定位数据包括定位刷新等。

在移动应用1001获取到需要同步的数据后,随后在步骤s320中,移动应用1001生成网址并发送到网页组件1002。该网址包括与目标网页对应的目标网址、中转网址及需要同步的数据,其中,该网址中的中转网址是访问目标网址时首先跳转到的网址,这样,网页组件1002可基于中转网址访问中转服务器210。

进一步地,网址为移动应用1001将需要同步的数据与目标网址、中转网址进行拼接而得到的。网址示例如下:

https://yj.api.autoxxx.com.cn/v2/api/commons/wx/wxjump?url=https%3a%2f%2fycxx.m.autoxxx.com.cn%2fremark%2findex%3frefpage%3dwx_dp%26cityid%3d500100%26lat%3d0%26lng%3d0&pvareaid=6836819&logindata=%7b%22login_source%22%3a%22m%22%2c%22_sign%22%3a%229cfb51de14122e568234234d08458f74e%22%2c%22usertoken%22%3a%222e217cd2b610f207bbf1c092c183945c%22%2c%22userid%22%3a3493868%2c%22_timestamp%22%3a1574323398514%7d&cityid=500100&athmuserid=309823855&reqsource=wechat_review&lat=0&lng=0&pcpopclub=fced8009b4774f14842xxxxe48301cd2a07

随后,在步骤s330中,网页组件1002基于网址向中转服务器210发送请求报文,并接收中转服务器210发送的响应报文。具体地,网页组件1002基于网址向中转服务器210发送请求报文,中转服务器210接收该请求报文并解析,得到需要同步的数据、目标网址,中转服务器210根据http协议将需要同步的数据写入小型文本文件(上述的存储同步数据的文件)中。并且由于中转服务器210和网页服务器220一般是不同的,二者之间不存在耦合,因此中转服务器210通过目标网址生成跳转指令,跳转指令中给出网页组件1002将要进行跳转的网页服务器220的ip地址。最后中转服务器210将小型文本文件和跳转指令通过响应报文发送至网页组件1002。具体地,http请求报文、http响应报文示例分别如下:

http请求报文示例:

get/v2/api/commons/wx/wxjump?url=https%3a%2f%2fyczj.m.autohome.com.cn%2fremark%2findex%3frefpage%3dwx_dp%26cityid%3d110100%26lat%3d39.97763008553074%26lng%3d116.33520330570768&pvareaid=6836819&logindata=%7b%22login_source%22%3a%22m%22%2c%22_sign%22%3a%226ece6fc357414a6e085e5f3c97dedf3c%22%2c%22usertoken%22%3a%222493703d754d9e06626ac219331d2e53%22%2c%22userid%22%3a3493868%2c%22_timestamp%22%3a1580808604092%7d&cityid=110100&athmuserid=30222855&reqsource=wechat_review&lat=39.97763008553074&lng=116.33520330570768&pcpopclub=2e11c795bc514d91b64302b11de524ce01cd2a07http/1.1

host:yczj.api.autohome.com.cn

accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

cookie:ahrlid=1587710331496ebl0exgmlwu0-1587710333902;__ah_uuid_ng=;ahpau=1;ahpvno=1;area=110105;autoid=d577f23818402a59cda426894f02cbe8;fvlid=1587710331496ebl0exgmlwu0;ref=0%7c0%7c0%7c0%7c2020-04-24+14%3a38%3a51.783%7c2020-04-24+14%3a38%3a51.711;sessionid=21a6ccff-c7e2-42d0-b3b8-544e83cf46c5%7c%7c2020-04-24+14%3a38%3a51.711%7c%7c0;

sessionip=210.13.244.130;

sessionvid=2bdc1359-3c67-44ff-99af-b44b974e39e5;v_no=2;

visit_info_ad=21a6ccff-c7e2-42d0-b3b8-544e83cf46c5||2bdc1359-3c67-44ff-99af-b44b974e39e5||-1||-1||2;cityid=110100;

pcpopclub=2e11c795bc514d91b64302b11de524ce01cd2a07;

yczj_auto_userid=30222855;yczj_latitude=39.97763008553074;

yczj_longitude=116.33520330570768;yczj_mini_program=wechat_review;

yczj_wx_userid=30222855

user-agent:mozilla/5.0(iphone;cpuiphoneos13_3_1likemacosx)applewebkit/605.1.15(khtml,likegecko)mobile/15e148micromessenger/7.0.12(0x17000c2c)nettype/wifilanguage/zh_cnminiprogram

accept-language:zh-cn

accept-encoding:gzip,deflate,br

connection:keep-alive。

http响应报文示例如下:

http/1.1302found

server:5.65

date:fri,24apr202006:40:45gmt

transfer-encoding:chunked

expires:thu,01jan197000:00:00gmt

set-cookie:yczj_mini_program=wechat_review;path=/;domain=.autohome.com.cn

set-cookie:yczj_latitude=39.97763008553074;path=/;domain=.autohome.com.cn

set-cookie:yczj_longitude=116.33520330570768;path=/;domain=.autohome.com.cn

set-

cookie:yczj_login_data=%7b%22login_source%22%3a%22m%22%2c%22_sign%22%3a%226ece6fc357414a6e085e5f3c97dedf3c%22%2c%22usertoken%22%3a%222493703d754d9e06626ac219331d2e53%22%2c%22userid%22%3a3493868%2c%22_timestamp%22%3a1580808604092%7d;path=/;domain=.autohome.com.cn

set-cookie:cityid=110100;path=/;domain=.autohome.com.cn

set-cookie:yczj_wx_userid=30222855;path=/;domain=.autohome.com.cn

set-cookie:yczj_auto_userid=30222855;path=/;domain=.autohome.com.cn

set-

cookie:pcpopclub=2e11c795bc514d91b64302b11de524ce01cd2a07;path=/;domain=.autohome.com.cn

location:https://yczj.m.autohome.com.cn/remark/index?refpage=wx_dp&cityid=110100&lat=39.97763008553074&lng=116.33520330570768

strict-transport-security:max-age=31622400

connection:keep-alive。

在本公开一个实施例中,该小型文本文件可为cookie文件。本发明不受限存储同步数据的小型文本文件文件,所有可以根据需要同步的数据生成小型文本文件的方式都在本发明的保护范围之内。具体地,cookie文件示例如下:

set-cookie:yczj_mini_program=wechat_review;path=/;domain=.autohome.com.cn

set-cookie:yczj_latitude=39.97763008553074;path=/;domain=.autohome.com.cn

set-cookie:yczj_longitude=116.33520330570768;path=/;domain=.autohome.com.cn

set-cookie:

yczj_login_data=%7b%22login_source%22%3a%22m%22%2c%22_sign%22%3a%226ece6fc357414a6e085e5f3c97dedf3c%22%2c%22usertoken%22%3a%222493703d754d9e06626ac219331d2e53%22%2c%22userid%22%3a3493868%2c%22_timestamp%22%3a1580808604092%7d;path=/;domain=.autohome.com.cn

set-cookie:cityid=110100;path=/;domain=.autohome.com.cn

set-cookie:yczj_wx_userid=30222855;path=/;domain=.autohome.com.cn

set-cookie:yczj_auto_userid=30222855;path=/;domain=.autohome.com.cn

set-cookie:

pcpopclub=2e11c795bc514d91b64302b11de524ce01cd2a07;path=/;domain=.autohome.com.cn

在本公开一个实施例中,该跳转指令可为302跳转指令,本发明不受限跳转指令的内容,所有可以实现跳转至网页服务器220的指令都在本发明的保护范围之内。

随后在步骤s340中,网页组件1002对响应报文进行解析,得到存储同步数据的文件,并将存储同步数据的文件保存至本地。

在网页组件1002接收到中转服务器210发送的响应报文后,对该响应报文进行解析,得到存储数据的文件,并对存储同步数据的文件的格式、完整性等进行校验,以防止需要同步数据在传输过程中出现数据丢失或者被篡改的情况。

若存储同步数据的文件的格式、完整性等校验无误,网页组件1002将校验无误后的存储同步数据的文件按照移动终端100的要求整理,方便后续目标网页、目标网页的下一级网页调用存储同步数据的文件中的数据。并将整理后的存储同步数据的文件保存至移动终端100的硬件或缓存中,目标网页及该目标网页的下级网页后续使用上述数据时,直接从移动终端100的硬件或缓存中获取即可。

若网页组件1002校验存储同步数据的文件的格式、完整性等过程中,发现存储同步数据的文件内容不完整或内容不正确,则不将该存在问题的存储同步数据的文件保存至移动终端100。

随后,网页组件1002会将需要同步的数据是否保存成功的消息发送至移动应用1001。具体地,若网页组件1002将存储同步数据的文件保存至移动终端100,则说明该需要同步的数据同步成功,并向移动应用1001发送同步数据成功的消息,若网页组件1002未将存储同步数据的文件保存至移动终端100,则说明该需要同步的数据同步失败,并向移动应用1001发送同步数据失败的消息,那么当用户再次打开该目标网页时,移动终端100会继续向目标网页同步上述同步失败的数据。

网页组件1002对响应报文进行解析,除了得到存储同步数据的文件,还得到跳转指令,网页组件1002基于跳转指令即可跳转至网页服务器220,解决了通过目标网页端的中转网页进行跳转易产生的网页回退栈等问题。

由于跳转指令中包括本网页组件1002进行跳转的网页服务器220的ip地址,因此在网页组件1002接收到中转服务器210的响应报文后,除了将存储同步数据的文件保存至本地,还会基于跳转指令与网页服务器220进行通信,以打开目标网页。具体地,网页组件1002基于跳转指令向网页服务器220发送http请求报文,网页服务器220接收并解析http请求报文,得到目标网址,根据目标网址找到资源,进而生成http响应报文,http响应报文中包括资源,并发送http响应报文至网页组件1002。网页组件1002接收并解析http响应报文,得到资源,并基于资源的数据完成目标网页渲染,进而展示目标网页。或者,网页组件1002根据网页服务器220返回的资源和已保存至本地的存储同步数据的文件展示目标网页。

随后,在步骤s350中,移动应用1001更新数据同步标识。在本公开的一个实施例中,上述所述的同步数据标识通过needsyncdata字段值表示,而needsyncdata字段值是基于同步数据成功/失败的消息或小程序中是否存在发生变化的数据而确定的。

needsyncdata字段值基于同步数据成功/失败的消息而确定的方式如下:移动应用1001根据同步数据成功的消息改变数据同步标识,使其表示不需要向目标网页同步数据,即移动应用1001根据同步数据成功的消息,将needsyncdata字段值由true修改为false,当needsyncdata字段值为false时,说明在用户下一次打开同一目标网页时该数据不需要向将要打开的目标网页进行同步。另外,移动应用1001根据同步数据失败的消息保持数据同步标识不变,使其表示需要向所述目标网页同步数据,即移动应用1001根据同步数据失败的消息,使得needsyncdata字段值true保持不变,当needsyncdata字段值为true时,说明在用户下一次打开同一目标网页时该数据仍需要向将要打开的目标网页进行同步。

另外,若在需要同步数据的移动应用1001中的小程序存在发生变化的数据时,移动应用1001将该变化数据对应的同步字段值设置为true,并基于同步字段值确定向将要打开的目标网页同步数据。反之移动应用1001将该未发生变化的同步字段值设置为false,并基于同步字段值确定不需要向将要打开的目标网页同步数据。

可见,本发明提供的移动应用向目标网页同步数据的方法中,在用户打开目标网页的过程中,将需要同步的数据写入cookie文件,并将cookie文件存储至本地中,以将数据同步至目标网页,保证在移动应用未提供数据接口的情况下实现和目标网页的数据同步是及时可靠的。另外,目标网页及目标网页的下级网页后续均可使用已存储在移动终端的cookie文件中的数据,以完成相关的网络请求、界面渲染等业务逻辑,从而展示目标网页。因此本发明提供的移动应用和网页同步数据的方法,在移动应用未提供数据接口的情况下,能够克服打开专用于接收同步数据的网页时机较难找到的问题。其次,在每次打开目标网页之前判断是否需要向目标网页同步数据,只有在需要同步数据的情况下才会进行数据同步,可以在保证数据同步及时可靠的前提下避免重复同步数据而造成资源的浪费。因此,基于本发明提供的数据同步方法,能够实现及时、准确、高可靠性的移动应用与网页之间的数据同步。

a7如a6所述的方法,其中,所述数据同步标识基于所述同步数据成功/失败的消息和/或所述应用程序中是否存在发生变化的数据而确定。

a8如a1所述的方法,所述网页组件对所述响应报文进行解析还得到跳转指令,所述方法还包括:

所述网页组件基于所述跳转指令向网页服务器发送请求报文;

所述网页组件接收所述网页服务器发送的响应报文;

所述网页组件根据所述网页服务器发送的响应报文展示所述目标网页;或

所述网页组件根据所述网页服务器发送的响应报文和已保存至本地的所述存储同步数据的文件展示所述目标网页。

a9如a8所述的方法,其中,所述跳转指令为302跳转。

a11如a1至a10中任一项所述的方法,其中,所述网页组件为webview组件。

a12如a1至a11中任一项所述的方法,其中,所述移动应用为小程序应用。

a13如a1至a12中任一项所述的方法,其中,所述需要同步的数据包括以下至少之一:用户数据、定位数据和统计数据。

这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、cd-rom、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。

在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的移动应用向目标网页同步数据的方法。

以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。

在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以任意的组合方式来使用。

此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。

如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。

尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1