一种app数据传输方法

文档序号:9527708阅读:948来源:国知局
一种app数据传输方法
【技术领域】
[0001]本发明涉及通信领域,更具体地,涉及一种APP数据传输方法。
【背景技术】
[0002]—般情况,APP是通过基于http/socket通信协议的API从服务端获取/传输数据并渲染UI。而众所周知,相同的功能或页面模块用户端APP可能会多次展示,与此同时,意味着APP和服务端之间需要通过API接口进行多次网络数据的传输。而对用户来说,在一定的时间范围内,若用户数据没有发生任何变化的话,那么也就意味着相同的数据会在APP和服务端之间通过网络进行了多次反反复复的传输,显然,η-l次流量是可以节省下来的,而此问题在昂贵的无线流量环境中更加突显。
[0003]现有APP的工作方式是:服务端(Server)响应客户端APP请求时返回Data,每次返回新Data并渲染UI。由于设计不合理,在相同的数据被调用η次时,ΑΡΡ这种工作方式则需要重复传输η-l次相同数据,会造成流量的浪费。

【发明内容】

[0004]为了克服上述现有技术存在的不足,本发明提出一种新的ΑΡΡ数据传输方法。这种方法引入了数据版本(DV)的概念,采用这种方法在相同数据传输的过程中能够有效的避免相同数据在网络上重复传输。
[0005]为了实现上述目的,本发明的技术方案为:
一种ΑΡΡ数据传输方法,具体为:
服务端Server响应客户端APP请求时,同时返回数据结果Datal和数据版本号DV1,客户端APP把数据结果Datal和数据版本号DV1缓存到本地;
1)当客户端APP第η次发起请求时,客户端ΑΡΡ先将数据版本号DV(η_1)和请求参数传输给服务端Server,服务端Server在响应客户端APP前,对请求参数进行解析确定新数据结果Data (η),并基于数据结果Data (η)进行计算并得出数据结果Data (η)的数据版本号DV(n);
2)将数据版本号DV(η)和DV(n-l)进行比较;确定DV (η)与DV(n_l)是否相同; 当两者不相同,则直接返回数据结果Data (η)和数据版本号DV(n),且客户端APP端需把两者缓存起来,并使用数据结果Data (η)渲染UI ;
当两者相同,则返回数据版本号DV (η-l),客户端APP根据返回的数据版本号DV (n_l),获取本地缓存的数据Data (η-l)渲染UI ;
客户端APP每次交互都反复按上述步骤1) -2)执行。
[0006]与现有技术相比,本发明的有益效果是:本发明方法引入了数据版本(DV)的概念,解决了在相同数据传输的过程中能够有效的避免相同数据在网络上重复传输的问题,节省了流量。
【附图说明】
[0007]图1为本发明的流程图。
【具体实施方式】
[0008]下面结合附图对本发明做进一步的描述,但本发明的实施方式并不限于此。
[0009]本发明针对现有APP存在的不足,现有的APP每个界面从服务端获取数据后渲染UI,而用户的数据在一定的时间内是不变的,但用户每次进入界面时都要从服务端获取最新的数据,假设(事实上)用户在这段时间内多次刷新界面获取到相同的返回数据的话,那么看起里η-l次返回相同数据都是多余了。为了解决这个问题,本发明提出的一种APP数据传输方法,包括以下步骤:
服务端Server响应客户端APP请求时,同时返回数据结果Datal和数据版本号DV1,客户端APP把数据结果Datal和数据版本号DV1缓存到本地;
1)当客户端APP第η次发起请求时,客户端ΑΡΡ先将数据版本号DV(η_1)和请求参数传输给服务端Server,服务端Server在响应客户端APP前,对请求参数进行解析确定新数据结果Data (η),并基于数据结果Data (η)进行计算并得出数据结果Data (η)的数据版本号DV(n);
2)将数据版本号DV(η)和DV(n-l)进行比较;确定DV (η)与DV(n_l)是否相同; 当两者不相同,则直接返回数据结果Data (η)和数据版本号DV(n),且客户端APP端需把两者缓存起来,并使用数据结果Data (η)渲染UI ;
当两者相同,则返回数据版本号DV (η-l),客户端APP根据返回的数据版本号DV (n_l),获取本地缓存的数据Data (η-l)渲染UI ;
客户端APP每次交互都反复按上述步骤1) -2)执行。
[0010]本发明方法引入了数据版本(DV),并将数据版本缓存在本地,解决了在相同数据传输的过程中能够有效的避免相同数据在网络上重复传输的问题,节省了流量。
[0011]以上所述的本发明的实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神原则之内所作出的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。
【主权项】
1.一种APP数据传输方法,其特征在于, 服务端Server响应客户端APP请求时,同时返回数据结果Datal和数据版本号DV1,客户端APP把数据结果Datal和数据版本号DVl缓存到本地; 1)当客户端APP第η次发起请求时,客户端APP先将数据版本号DV(η_1)和请求参数传输给服务端Server,服务端Server在响应客户端APP前,对请求参数进行解析确定新数据结果Data (η),并基于数据结果Data (η)进行计算并得出数据结果Data (η)的数据版本号DV (η); 2)将数据版本号DV(η)和DV(n-l)进行比较;确定DV(η)与DV(n_l)是否相同; 当两者不相同,则直接返回数据结果Data (η)和数据版本号DV (η),且客户端APP端需把两者缓存起来,并使用数据结果Data (η)渲染UI ; 当两者相同,则返回数据版本号DV (η-l),客户端APP根据返回的数据版本号DV (η_1),获取本地缓存的数据Data (η-l)渲染UI ; 客户端APP每次交互都反复按上述步骤I) -2)执行。
【专利摘要】本发明公开一种APP数据传输方法,服务端响应客户端APP请求时,同时返回Data1和DV1,APP把数据结果Data1和数据版本号DV1缓存到本地;当APP第n次发起请求时,APP将DV(n-1)和请求参数传输给服务端,服务端在响应APP前,对请求参数进行解析确定新数据结果Data(n),并基于Data(n)进行计算并得出DV(n);将数据版本号DV(n)和DV(n-1)进行比较;确定DV(n)与DV(n-1)是否相同;当两者不相同,则直接返回Data(n)和DV(n),且APP端需把两者缓存起来,使用数据结果Data(n)渲染UI;当两者相同,则返回DV(n-1),APP根据返回的DV(n-1),获取本地缓存的数据Data(n-1)渲染UI;客户端APP每次交互都反复按上述步骤1)-2)执行。该方法引入了数据版本,采用这种方法在相同数据传输的过程中能够有效的避免相同数据在网络上重复传输。
【IPC分类】H04L29/08
【公开号】CN105282237
【申请号】CN201510588378
【发明人】覃俊儒, 邓启业
【申请人】广州亚美信息科技有限公司
【公开日】2016年1月27日
【申请日】2015年9月16日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1