CN105681380B - 客户端离线化方法及其系统 - Google Patents

客户端离线化方法及其系统 Download PDF

Info

Publication number
CN105681380B
CN105681380B CN201410668936.1A CN201410668936A CN105681380B CN 105681380 B CN105681380 B CN 105681380B CN 201410668936 A CN201410668936 A CN 201410668936A CN 105681380 B CN105681380 B CN 105681380B
Authority
CN
China
Prior art keywords
data
client
api
network
network request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410668936.1A
Other languages
English (en)
Other versions
CN105681380A (zh
Inventor
贾扬武
张常松
张宇航
胡宏伟
胡峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410668936.1A priority Critical patent/CN105681380B/zh
Publication of CN105681380A publication Critical patent/CN105681380A/zh
Application granted granted Critical
Publication of CN105681380B publication Critical patent/CN105681380B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及移动设备领域,公开了一种客户端离线化方法及其系统。本发明中,该客户端离线化方法包括步骤:客户端向网络侧发起API网络请求;该客户端收到网络侧返回的数据后,根据API网络请求的信息生成用于识别该数据的标识信息;将该数据和该数据的标识信息作为缓存数据存储在该客户端中。本发明中,因为缓存数据的标识信息是根据API网络请求的信息生成的,所以客户端可以快速而准确找到与某API网络请求对应的缓存数据,方便地实现客户端的离线化。

Description

客户端离线化方法及其系统
技术领域
本发明涉及移动设备领域,特别涉及客户端离线化的技术。
背景技术
随着手机app的爆发式增长,用户体验对app来说越来越重要的位置。用户在手机上购买了消费券后,去大型商场消费,经常会碰到因为网络慢导致消费券打不开或没法使用的问题。所以把券信息缓存到手机本地,在弱网络或无网络下能打开,能大幅提升用户体验。
当前业内大部分无线离线化方案的实现方式是通过http请求访问服务端数据,客户端请求到数据后,业务方把数据存储到客户端的SharedPreferUtil或者sqllite数据库中,客户端根据网络状态判断来读取本地数据,还是请求网络。现有方案是基于功能纬度的存储,复用性较差,不可组件化,且和API没什么关联关系。
目前业内离线化的实现方案很多,但缺少基于一种通用的,高性能,可动态配置的方案。
发明内容
本发明的目的在于提供一种客户端离线化方法及其系统,客户端可以快速而准确找到与某API网络请求对应的缓存数据,方便地实现客户端的离线化。
为解决上述技术问题,本发明的实施方式公开了一种客户端离线化方法,该方法包括以下步骤:
客户端向网络侧发起API网络请求;
该客户端收到网络侧返回的数据后,根据API网络请求的信息生成用于识别该数据的标识信息;
将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
本发明的实施方式还公开了一种客户端离线化系统,该系统包括:
网络请求模块,用于向网络侧发起API网络请求;
标识信息生成模块,用于在该客户端收到网络侧返回的数据后,根据API网络请求的信息生成用于识别该数据的标识信息;
本地存储器,用于将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
本发明实施方式与现有技术相比,主要区别及其效果在于:
因为缓存数据的标识信息是根据API网络请求的信息生成的,所以客户端可以快速而准确找到与某API网络请求对应的缓存数据,方便地实现客户端的离线化。
进一步地,在向网络侧发起正式的API网络请求之前,先判断客户端的缓存数据中是否存在对应于API网络请求的数据,若存在则直接根据缓存中的数据进行业务处理,若不存在则向网络侧发起API网络请求,有效提升了客户端的离线体验。
进一步地,根据数据有效期并结合本地是否存在需要的数据、客户端与网络侧的网络连接是否正常来决定请求本地数据还是网络侧数据,相比于根据网络状态判断读取本地数据还是网络数据来说,判断结果更加可靠,且提升了用户体验。
进一步地,根据数据的重要程度大小或者使用频次高低,对网络侧返回的数据配置是否需要缓存的信息,可以有效节省客户端的存储空间。
附图说明
图1是本发明第一实施方式中一种客户端离线化方法的流程示意图;
图2是本发明第三实施方式中一种客户端离线化方法中步骤101的子步骤的流程示意图;
图3是本发明第三实施方式中一种客户端离线化方法的整体架构图;
图4是本发明第三实施方式中一种客户端离线化方法的业务流程图;
图5是本发明第三实施方式中一种客户端离线化方法的业务处理结构图;
图6是本发明第四实施方式中一种客户端离线化系统的结构示意图。
具体实施方式
在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明中涉及的术语有:
API:客户端调用服务端的接口;
配置中心:管理配置一些API信息,且能把配置推送到客户端和应用的服务端;
ttid:渠道id,渠道是指91助手,android市场,360手机助手等app下载市场。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施方式作进一步地详细描述。
本发明第一实施方式涉及一种客户端离线化方法,图1是该客户端离线化方法的流程示意图。
具体地说,如图1所示,该方法包括以下步骤:
在步骤101中,客户端向网络侧发起API网络请求。
可以理解,API网络请求是指调用API发起的网络请求。
此后进入步骤102,该客户端收到网络侧返回的数据后,根据API网络请求的信息生成用于识别该数据的标识信息。
此外,可以理解,步骤102中,可以是直接将API的特征信息(如API网络请求的名称,API版本号,相关参数,是否需要编码,以及渠道ID等)直接加入到标识信息中,也可以是对API的特征信息先进行某种处理,如加密、HASH等,再加入到标识信息中。
此外,还可提供将API网络请求的某一特征信息加入黑名单方法,如果API网络请求的某些信息不想影响用于识别数据的标识信息,则可以将网络请求的这些信息加入黑名单,生成标识信息的时候会跳过这些信息。
数据缓存的标识信息(或者称为索引值key)和API网络请求的信息(或者称为API网络请求的参数)有强关联关系,由API网络请求参数决定,不能被随意指定,使得在判断是否存在对应于API网络请求的缓存数据时,能够根据API网络请求的参数快速判断是否存在对应的缓存数据,提高了判断的效率。
此后进入步骤103,将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
因为缓存数据的标识信息是根据API网络请求的信息生成的,所以客户端可以快速而准确找到与某API网络请求对应的缓存数据,方便地实现客户端的离线化。
本发明第二实施方式涉及一种客户端离线化方法,第二实施方式在第一实施方式的基础上进行了改进,主要改进之处在于:在向网络侧发起正式的API网络请求之前,先判断客户端的缓存数据中是否存在对应于API网络请求的数据,若存在则直接根据缓存中的数据进行业务处理,若不存在则向网络侧发起API网络请求,有效提升了客户端的离线体验。具体地说:
在步骤101中,包括以下子步骤:
根据该API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据;
如果存在该数据,则根据存储的数据进行业务处理;如果不存在该数据,则向网络侧发起API网络请求。
此外,可以理解,在本实施方式中,客户端的业务模块在进行业务处理中需要网络侧的数据时,可以先向基于API的软件开发工具包发起API网络请求。软件开发工具包根据该API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据。如果存在该数据,则业务模块根据存储的数据进行业务处理。如果不存在该数据,则通过软件开发工具包向网络侧发起API网络请求。
本发明第三实施方式涉及一种客户端离线化方法,图2是该客户端离线化方法中步骤101的子步骤的流程示意图。
第三实施方式在第一实施方式的基础上进行了改进,主要改进之处在于:根据数据有效期并结合本地是否存在需要的数据、客户端与网络侧的网络连接是否正常来决定请求本地数据还是网络侧数据,相比于根据网络状态判断读取本地数据还是网络数据来说,判断结果更加可靠,且提升了用户体验;根据数据的重要程度大小或者使用频次高低,对网络侧返回的数据配置是否需要缓存的信息,可以有效节省客户端的存储空间。具体地说:
在步骤103中,还包括子步骤:存储数据所对应的数据有效期。
如图2所示,在步骤101中,包括以下子步骤:
根据该API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据、当前时刻是否超过该数据的数据有效期、客户端与网络侧的网络连接是否正常;
如果存在该数据且未超过数据有效期,或者,存在该数据且超过数据有效期且网络连接不正常,则根据存储的该数据进行业务处理;
如果不存在该数据,或者,存在该数据且超过数据有效期且网络连接正常,则客户端向网络侧发起请求该数据的API网络请求,并根据网络侧返回的数据进行业务处理。
从上述描述中可以理解,数据如果未超过数据有效期,就不会再发起网络请求。
此外,可以理解,在本发明中,数据如果超过数据有效期不会被清除,只能被新数据替换,无网络连接时还是会返回过期的数据。
此外,除了本地存储器存储的缓存数据中既不存在所需要的数据、客户端与网络侧的网络连接又不正常的情况下,不能提供数据,其它情况都是可以提供数据的,包括提供本地存储器的数据或者提供网络侧的数据。
本发明不依赖于浏览器,数据并不存储在浏览器缓冲中,而是存储在客户端的本地存储器里。
客户端的缓存数据中是否存在对应于该API网络请求的数据、当前时刻是否超过该数据的数据有效期、客户端与网络侧的网络连接是否正常这些业务逻辑处理可由软件开发工具包sdk完成,并由软件开发工具包sdk向网络侧发起API网络请求。
根据数据有效期并结合本地是否存在需要的数据、客户端与网络侧的网络连接是否正常来决定请求本地数据还是网络侧数据,相比于根据网络状态判断读取本地数据还是网络数据来说,判断结果更加可靠,且提升了用户体验
优选地,在步骤101之前,还包括以下步骤:
网络侧通过配置中心预先将数据和数据有效期推送到客户端,客户端将数据和数据有效期存储到本地存储器。
可以理解,预先将缓存数据和缓存数据的数据有效期推送到客户端,相当于一个初始化的过程,可以使得客户端第一次在业务处理过程中需要网络侧的数据时,能够判断本地存储器存储的缓存数据中是否存在该数据。可以理解,在本发明的其他实施方式中,该步骤并不是必须的。
优选地,配置中心推送的信息还包括是否需要缓存的信息;在“客户端向网络侧发起请求该数据的API网络请求,并根据网络侧返回的数据进行业务处理”的步骤之后,还包括步骤:
根据是否需要缓存的信息,将网络侧返回的数据,用于识别该数据的标识信息和数据有效期存储到本地存储器。
根据数据的重要程度大小或者使用频次高低,对网络侧返回的数据配置是否需要缓存的信息,可以有效节省客户端的存储空间。
此外,可以理解,在本发明的其它实施方式中,该步骤并不是必须的,也可以将所有API网络请求的数据都进行缓存。
在本发明的其他实施方式中,配置中心推送的信息除了是否需要缓存的信息,还包括数据修改时间和数据标签。
作为本实施方式的优选例,图3是该客户端离线化方法的整体架构图,如图3所示:
1、业务模块发起API网络请求,经过sdk(软件开发工具包)调用服务端;
2、sdk进行业务逻辑处理,判断是否存在缓存数据,缓存数据是否过期等;
3、sdk向服务端发起API请求;
4、配置中心配置了API的信息,这些信息会推送给业务服务端;
其中,配置信息有:
max-age:数据缓存最长时间;
of:API是否需要离线;
Last-Modified:数据修改时间;
ETag:数据标签;
5、服务端会把API信息放在response的head中返回给sdk;
6、sdk向存储中心读写完整的API请求回调后的数据。
相应的业务流程图如图4所示:首先调用sdk发起API网络请求;sdk进行业务处理,判断是否存在该API的缓存;如果存在,则判断该缓存是否过期,如果没有过期,则返回数据,进行页面渲染;如果不存在该API的缓存,或者即使存在该缓存但是已经过期,则sdk向服务端发起API网络请求;服务端执行处理后,sdk若调用成功,则将API请求结果的信息存储在本地cache;如果sdk调用失败,则显示错误提示。
相应的业务处理结构图如图5所示:列向(即纵向)包括用户界面UI,Biz/Mtop/Network,本地存储器Cache Store和服务端Server,横向包括用户需求,离线处理(offline)和在线处理(online)。当用户需求触发UI变化行为时,sdk进行处理业务,读取Cache,当Cache有需要的数据且未过期时,返回结果并渲染界面;当不存在需要的数据或者数据过期时,sdk请求服务端;服务端执行后更新Cache,且结果内容有变化时,返回结果并渲染界面。
作为本实施方式的优选例,本地存储器为cache,cache的索引值key生成规则包括:
1.根据API请求的request+ttid(渠道id),生成一个cache的key。
2.request中包括APIName(API名称),version(API版本号),data(请求入参),needEcode等属性,这个cache的key是request的属性+ttid组合而成的md5字符串。
3.还提供了一个request属性加入黑名单方法,如果request请求的有些属性不想影响cache key,那么可以把那些属性加入list。生成key的时候会跳过这些属性。
cache的数据值value生成规则:
使response的对象转换为字节流,response包含了header,body内容,header中包括cache的有效期,body包含本次API请求的返回数据。
此外,API的cache是永久缓存,不会被其他API的cache淘汰掉,有自己的独立缓存分区,缓存分区定义在assets资源目录下的sdk.property文件中。格式为APIname$版本号=分区名。
本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable ArrayLogic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称“PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
本发明第四实施方式涉及一种客户端离线化系统,图6是该客户端离线化系统的结构示意图。
具体地说,如图6所示,该客户端离线化系统该系统包括:
网络请求模块,用于向网络侧发起API网络请求。
标识信息生成模块,用于在该客户端收到网络侧返回的数据后,根据API网络请求的信息生成用于识别该数据的标识信息。
本地存储器,用于将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
本发明根据数据有效期并结合本地是否存在需要的数据、客户端与网络侧的网络连接是否正常来决定请求本地数据还是网络侧数据,相比于根据网络状态判断读取本地数据还是网络数据来说,更加可靠,且提升了用户体验。
第一实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
本发明第五实施方式涉及一种客户端离线化系统,第五实施方式在第四实施方式的基础上进行了改进,主要改进之处在于:在向网络侧发起正式的API网络请求之前,先判断客户端的缓存数据中是否存在对应于API网络请求的数据,若存在则直接根据缓存中的数据进行业务处理,若不存在则向网络侧发起API网络请求,有效提升了客户端的离线体验。具体地说:
网络请求模块包括以下子模块:
业务子模块,用于进行业务处理;
第一控制子模块,用于根据API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据;如果存在该数据,则业务模块根据存储的数据进行业务处理;如果不存在该数据,则向网络侧发起API网络请求。
第二实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
本发明第六实施方式涉及一种客户端离线化系统,第六实施方式在第四实施方式的基础上进行了改进,主要改进之处在于:根据数据有效期并结合本地是否存在需要的数据、客户端与网络侧的网络连接是否正常来决定请求本地数据还是网络侧数据,相比于根据网络状态判断读取本地数据还是网络数据来说,判断结果更加可靠,且提升了用户体验;根据数据的重要程度大小或者使用频次高低,对网络侧返回的数据配置是否需要缓存的信息,可以有效节省客户端的存储空间。具体地说:
存储模块还用于存储数据所对应的数据有效期;
网络请求模块包括以下子模块:
业务处理子模块,用于进行业务处理;
第二控制子模块,用于根据API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据、当前时刻是否超过该数据的数据有效期、客户端与网络侧的网络连接是否正常;如果存在该数据且未超过数据有效期,或者,存在该数据且超过数据有效期且网络连接不正常,则业务子模块根据存储的该数据进行业务处理;如果不存在该数据,或者,存在该数据且超过数据有效期且网络连接正常,则向网络侧发起请求该数据的API网络请求,业务模块根据网络侧返回的数据进行业务处理。
优选地,还包括配置中心,网络侧通过配置中心预先将数据和数据的数据有效期推送到客户端,客户端将数据和数据的数据有效期存储到本地存储器。
此外,可以理解,在本发明的其他实施方式中,配置中心推送的信息除了是否需要缓存的信息,还包括数据修改时间和数据标签。
优选地,配置中心推送的信息还包括是否需要缓存的信息,本地存储器根据是否需要缓存的信息,将网络侧返回的数据,用于识别该数据的标识信息和数据有效期存储起来。
第三实施方式是与本实施方式相对应的方法实施方式,本实施方式可与第三实施方式互相配合实施。第三实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第三实施方式中。
需要说明的是,本发明各设备实施方式中提到的各模块都是逻辑模块,在物理上,一个逻辑模块可以是一个物理模块,也可以是一个物理模块的一部分,还可以以多个物理模块的组合实现,这些逻辑模块本身的物理实现方式并不是最重要的,这些逻辑模块所实现的功能的组合才是解决本发明所提出的技术问题的关键。此外,为了突出本发明的创新部分,本发明上述各设备实施方式并没有将与解决本发明所提出的技术问题关系不太密切的模块引入,这并不表明上述设备实施方式并不存在其它的模块。
本发明将基于API的离线存储技术应用于业务实践,提供了完整一套的离线化技术方案,其创新点包括:
1.基于API粒度的离线缓存;
2.根据数据的有效期来判断请求本地还是网络数据;
3.把可变信息放在配置中心,做到控制客户端数据的有效期和是否要缓存。
基于上述创新点,本发明解决现有技术的缺点,达到的技术效果包括:
1.高复用性,根据API来缓存,是一个独立的组件;
2.低成本接入,非常容易的给业务方使用;
3.高安全性,对传递数据进行了加密和压缩;
4.去除不可靠的网络状态判断,根据数据的有效期决定读取本地还是网络请求;
5.可动态配置,把API信息在配置中心配置后,可以动态修改存放在客户端上的数据有效期等;
6.支持h5的离线化。
需要说明的是,在本专利的权利要求和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (10)

1.一种客户端离线化方法,其特征在于,包括以下步骤:
客户端向网络侧发起API网络请求;
该客户端收到网络侧返回的数据后,根据所述API网络请求的信息生成用于识别该数据的标识信息,其中,将API的特征信息直接加入到所述标识信息中,其中,所述API的特征信息包括以下属性之一或它们的任意组合:API网络请求的名称,API版本号,请求入参,是否需要编码的属性,以及渠道ID,并且,所述标识信息是所述API网络请求的所述属性与所述渠道ID组合而成的md5字符串;
数据重要数据信息将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
2.根据权利要求1所述的客户端离线化方法,其特征在于,在所述“客户端向网络侧发起API网络请求”的步骤中,包括以下子步骤:
根据该API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据;
如果存在该数据,则根据所述存储的数据进行业务处理;如果不存在该数据,则向网络侧发起API网络请求。
3.根据权利要求1所述的客户端离线化方法,其特征在于,在所述“将该数据和该数据的标识信息作为缓存数据存储在该客户端中”的步骤中,还包括子步骤:存储所述数据所对应的数据有效期;
在所述“客户端向网络侧发起API网络请求”的步骤中,包括以下子步骤:
根据该API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据、当前时刻是否超过该数据的数据有效期、客户端与网络侧的网络连接是否正常;
如果存在该数据且未超过数据有效期,或者,存在该数据且超过数据有效期且网络连接不正常,则根据所述存储的该数据进行业务处理;
如果不存在该数据,或者,存在该数据且超过数据有效期且网络连接正常,则客户端向网络侧发起请求该数据的API网络请求,并根据网络侧返回的数据进行业务处理。
4.根据权利要求3所述的客户端离线化方法,其特征在于,在所述“客户端向网络侧发起API网络请求”的步骤之前,还包括以下步骤:
网络侧通过配置中心预先将数据和数据有效期推送到客户端,客户端将数据和数据有效期存储到本地存储器。
5.根据权利要求4所述的客户端离线化方法,其特征在于,所述配置中心推送的信息还包括是否需要缓存的信息;
在所述“客户端向网络侧发起请求该数据的API网络请求,并根据网络侧返回的数据进行业务处理”的步骤之后,还包括步骤:
根据所述是否需要缓存的信息,将所述网络侧返回的数据,用于识别该数据的标识信息和数据有效期存储到本地存储器。
6.一种客户端离线化系统,其特征在于,该系统包括:
网络请求模块,用于向网络侧发起API网络请求;
标识信息生成模块,用于在该客户端收到网络侧返回的数据后,根据所述API网络请求的信息生成用于识别该数据的标识信息,其中,将API的特征信息直接加入到所述标识信息中,其中,所述API的特征信息包括以下属性之一或它们的任意组合:API网络请求的名称,API版本号,请求入参,是否需要编码的属性,以及渠道ID,并且,所述标识信息是所述API网络请求的所述属性与所述渠道ID组合而成的md5字符串;
本地存储器,用于将该数据和该数据的标识信息作为缓存数据存储在该客户端中。
7.根据权利要求6所述的客户端离线化系统,其特征在于,所述网络请求模块包括以下子模块:
业务子模块,用于进行业务处理;
第一控制子模块,用于根据所述API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据;如果存在该数据,则业务模块根据所述存储的数据进行业务处理;如果不存在该数据,则向网络侧发起API网络请求。
8.根据权利要求7所述的客户端离线化系统,其特征在于,所述存储器还用于存储所述数据所对应的数据有效期;
所述网络请求模块包括以下子模块:
业务处理子模块,用于进行业务处理;
第二控制子模块,用于根据所述API网络请求所对应的用于识别数据的标识信息判断客户端的缓存数据中是否存在对应于该API网络请求的数据、当前时刻是否超过该数据的数据有效期、客户端与网络侧的网络连接是否正常;如果存在该数据且未超过数据有效期,或者,存在该数据且超过数据有效期且网络连接不正常,则所述业务子模块根据所述存储的该数据进行业务处理;如果不存在该数据,或者,存在该数据且超过数据有效期且网络连接正常,则向网络侧发起请求该数据的API网络请求,所述业务子模块根据网络侧返回的数据进行业务处理。
9.根据权利要求8所述的客户端离线化系统,其特征在于,还包括配置中心;
网络侧通过所述配置中心预先将数据和数据的数据有效期推送到客户端,客户端将数据和数据的数据有效期存储到本地存储器。
10.根据权利要求9所述的客户端离线化系统,其特征在于,所述配置中心推送的信息还包括是否需要缓存的信息;
所述本地存储器根据所述是否需要缓存的信息,将所述网络侧返回的数据,用于识别该数据的标识信息和数据有效期存储起来。
CN201410668936.1A 2014-11-20 2014-11-20 客户端离线化方法及其系统 Active CN105681380B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410668936.1A CN105681380B (zh) 2014-11-20 2014-11-20 客户端离线化方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410668936.1A CN105681380B (zh) 2014-11-20 2014-11-20 客户端离线化方法及其系统

Publications (2)

Publication Number Publication Date
CN105681380A CN105681380A (zh) 2016-06-15
CN105681380B true CN105681380B (zh) 2019-09-03

Family

ID=56957383

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410668936.1A Active CN105681380B (zh) 2014-11-20 2014-11-20 客户端离线化方法及其系统

Country Status (1)

Country Link
CN (1) CN105681380B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106231110A (zh) * 2016-08-12 2016-12-14 北京东方车云信息技术有限公司 司机客户端的离线服务方法、司机客户端及相关系统
CN108509586A (zh) * 2018-03-29 2018-09-07 努比亚技术有限公司 缓存管理的方法、装置及计算机可读存储介质
CN109842610B (zh) * 2018-12-13 2022-07-26 平安科技(深圳)有限公司 接口请求处理方法、装置、计算机设备及存储介质
CN111642136A (zh) * 2018-12-29 2020-09-08 北京嘀嘀无限科技发展有限公司 一种用于信息显示的系统和方法
CN110825986B (zh) * 2019-11-05 2023-03-21 上海携程商务有限公司 客户端请求数据的方法、系统、存储介质和电子设备
CN111966937A (zh) * 2020-09-04 2020-11-20 Oppo(重庆)智能科技有限公司 一种搜索响应方法、装置及计算机可读存储介质
CN114422594A (zh) * 2020-10-13 2022-04-29 顺丰科技有限公司 业务处理方法、装置、计算机设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686684A (zh) * 2012-09-20 2014-03-26 腾讯科技(深圳)有限公司 离线缓存的方法及装置
CN103699674A (zh) * 2013-12-31 2014-04-02 优视科技有限公司 网页保存、网页打开方法及装置和网页浏览系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686684A (zh) * 2012-09-20 2014-03-26 腾讯科技(深圳)有限公司 离线缓存的方法及装置
CN103699674A (zh) * 2013-12-31 2014-04-02 优视科技有限公司 网页保存、网页打开方法及装置和网页浏览系统

Also Published As

Publication number Publication date
CN105681380A (zh) 2016-06-15

Similar Documents

Publication Publication Date Title
CN105681380B (zh) 客户端离线化方法及其系统
CN108173938B (zh) 服务器负载分流方法及装置
US11569982B2 (en) Blockchain compression using summary and padding blocks
CN104077310B (zh) 加载资源文件的方法、设备和系统
WO2006056992A3 (en) Obtaining and assessing objective data relating to network resources
CN103338249A (zh) 缓存方法及装置
US10771358B2 (en) Data acquisition device, data acquisition method and storage medium
US9639398B1 (en) Burst throttling with sequential operation detection
AU2017265064B2 (en) Access to data on a remote device
WO2016206605A1 (zh) 一种客户端数据的采集方法和装置
CN105589879B (zh) 客户端下载图片的方法及其装置
US9686277B2 (en) Unique identification for an information handling system
CN104376122A (zh) 浏览器客户端获得静态文件的方法及服务器
CN109561117A (zh) 数据采集方法及装置
CN102546668A (zh) 一种独立访问者的统计方法、装置及系统
WO2013094775A1 (en) Data system and method thereof to distributedly store divided data based on a read/write rate of the storage location
US8892639B2 (en) Method and system for processing file stored in cloud storage and computer readable storage medium storing the method
CN106330788B (zh) 报文分片传输方法和装置
CN102752371A (zh) 在客户端上实现闪屏的方法和客户端
KR20090003405A (ko) 파일 업로드 시스템 및 방법
CN103490978A (zh) 终端、服务器和消息监视方法
EP3506599B1 (en) Method for synchronizing contact information, apparatus and medium
CN108399175B (zh) 一种数据存储、查询方法及其装置
CN105184559B (zh) 一种支付系统及方法
CN111147235B (zh) 对象访问方法、装置、电子设备及机器可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant