CN116010740A - 浏览器的数据文件更新方法、装置、电子设备及存储介质 - Google Patents
浏览器的数据文件更新方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116010740A CN116010740A CN202310008125.8A CN202310008125A CN116010740A CN 116010740 A CN116010740 A CN 116010740A CN 202310008125 A CN202310008125 A CN 202310008125A CN 116010740 A CN116010740 A CN 116010740A
- Authority
- CN
- China
- Prior art keywords
- target
- browser
- file
- update
- files
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本公开提供了一种浏览器的数据文件更新方法、装置、电子设备及存储介质,可以应用于信息安全技术领域。该方法包括:响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互,目标文件存储于存储器的预设存储地址,包括与更新指令对应的资源文件;对目标服务返回的目标文件进行解密,得到明文信息;以及根据明文信息更新浏览器的浏览器界面。
Description
技术领域
本公开涉及信息安全技术领域,具体涉及一种浏览器的数据文件更新方法、装置、电子设备及存储介质。
背景技术
随着金融行业的快速发展,金融企业一般采用集中处理系统处理来自多个客户端的请求。例如,多个客户端向集中处理系统发送加载数据的浏览器请求,由集中处理系统处理浏览器请求并返回对应的数据文件。
在相关技术中,一般将数据文件预先存储至客户端,以避免请求响应时间过长。但是,由于部署在多个地区的客户端设备类型多样、客户端内安装的浏览器类型多样,导致需要花费高额成本编写适应客户端设备和浏览器类型的文件读取方法和文件更新方法。
发明内容
鉴于上述问题,本公开提供了一种浏览器的数据文件更新方法、装置、电子设备及存储介质。
根据本公开的第一个方面,提供了一种浏览器的数据文件更新方法,应用于客户端设备,该方法包括:
响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互,目标文件存储于存储器的预设存储地址,包括与更新指令对应的资源文件;
对目标服务返回的目标文件进行解密,得到明文信息;以及
根据明文信息更新浏览器的浏览器界面。
根据本公开的实施例,其中,响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,包括:
响应于确定浏览器与目标服务之间已建立第一连接,根据更新指令生成读取请求,其中,第一连接为基于目标协议的连接,用于允许浏览器和目标服务之间进行交互,读取请求用于向目标服务请求读取目标文件;以及
利用目标服务,根据读取请求从预设存储地址获取目标文件。
根据本公开的实施例,其中,利用目标服务,根据读取请求从预设存储地址获取目标文件,包括:
根据读取请求,确定目标服务内的读取方法;
根据读取请求内的请求参数,调用读取方法从所述预设存储地址获取目标文件;以及
将目标文件返回浏览器。
根据本公开的实施例,其中,响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,还包括:
响应于确定浏览器与目标服务之间未建立第一连接,通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口,调用接口用于在多种类型的浏览器和目标服务之间建立连接;以及
根据调用接口,在浏览器和目标服务之间建立第一连接。
根据本公开的实施例,其中,目标文件包括在应用服务器对资源文件进行加密后的文件,应用服务器用于支持浏览器的多种应用功能;
对目标文件进行解密,得到明文信息,包括:
响应于接收到目标服务返回的目标文件,获取解密密钥,其中,解密密钥与应用服务器采用的加密密钥相对应;以及
根据解密密钥对目标文件进行解密,得到明文信息。
根据本公开的实施例,其中,在响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件之前,还包括:
响应于检测到用户的登录状态为已登录,向应用服务器发送下载请求,所述下载请求用于从应用服务器下载M个更新文件和所述更新文件的更新日期,所述更新文件包括所述目标文件,M大于等于1;
接收M个所述更新文件和M个所述更新日期,并将M个更新文件和M个更新日期返回浏览器,其中,更新日期用于表征应用服务器配置更新文件的日期;以及
利用目标服务,根据更新日期将更新文件存储至预设存储地址。
根据本公开的实施例,其中,利用目标服务,根据更新日期将M个更新文件存储至预设存储地址,包括:
目标服务在接收更新日期和更新文件之后,利用目标组件,比较M个更新文件的更新日期和M个最近更新文件的更新日期,得到比较结果,最近更新文件存储于预设存储地址;以及
响应于比较结果表征M个更新文件的更新日期晚于最近更新文件的更新日期,利用更新文件替换最近更新文件。
根据本公开的实施例,其中,在利用目标服务,根据更新日期将M个更新文件存储至预设存储地址之前,包括:
通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口;以及
根据调用接口,在浏览器和目标服务之间建立第二连接,以便将更新文件存储至预设存储地址,第二连接为基于目标协议的连接。
本公开的第二方面提供了一种浏览器的数据文件更新方法,应用于应用服务器,该方法包括:
接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;
根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至所述执行队列;
执行所述目标下载任务,下载M个资源文件和M个所述资源文件的更新日期;
利用加密秘钥对M个所述资源文件进行加密,得到M个更新文件;以及
将加密后的所述M个更新文件和M个所述更新日期返回所述客户端设备。
9、根据本公开的实施例,其中,所述根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至所述执行队列,包括:
获取执行队列内下载任务的用户数目;
在确定所述用户数目不超过预设阈值的情况下,生成所述目标下载任务,并将所述目标下载任务添加至所述执行队列;
在确定所述用户数目超过预设阈值的情况下,根据所述M个资源文件标识生成等待任务,并将所述等待任务添加至等待队列;以及
在所述等待任务之前的用户数目和所述执行队列内的用户数目的总和小于或等于所述预设阈值的情况下,将所述等待任务作为所述目标下载任务添加至所述执行队列。
本公开的第三方面提供了一种浏览器的数据文件更新装置,应用于客户端设备,该装置包括:
获取模块,用于响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互,目标文件存储于存储器的预设存储地址,包括与更新指令对应的资源文件;
解密模块,用于对目标文件进行解密,得到明文信息;以及
更新模块,用于根据明文信息更新浏览器的浏览器界面。
本公开的第四方面提供了一种浏览器的数据文件更新装置,应用于应用服务器,该装置包括:
接收模块,用于接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;
生成模块,用于根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至所述执行队列;
执行模块,用于执行所述目标下载任务,下载M个资源文件和M个所述资源文件的更新日期;以及
加密模块,用于利用加密秘钥对M个所述资源文件进行加密,得到M个更新文件;以及
返回模块,用于将加密后的所述M个更新文件和M个所述更新日期返回所述客户端设备。
本公开的第五方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行上述浏览器的数据文件更新方法。
本公开的第六方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述浏览器的数据文件更新方法。
本公开的第七方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述浏览器的数据文件更新方法。
本公开的实施例响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件;对目标文件进行解密,得到明文信息;以及根据明文信息更新浏览器的浏览器界面,实现了适用于多种客户端设备、多种浏览器种类的文件更新。本公开的实施例通过在浏览器和本地文件之间设置了目标服务,根据目标服务的统一文件处理操作,即可实现文件的读取和更新,无需针对多种浏览器类型、多种客户端设备编写多种更新方法,也无需针对多样的更新方法设置多种维护手段,实现了减少代码编写工作量、降低开发和维护浏览器成本的技术效果。
此外,本公开的实施例通过目标服务间接实现浏览器与本地存储器之间的交互,在不同浏览器环境中仍然可以建立统一的调用接口,实现了跨浏览器的数据文件更新。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的浏览器的数据文件更新方法的应用场景;
图2示意性示出了根据本公开实施例的浏览器的数据文件更新方法的流程图;
图3示意性示出了根据本公开实施例的目标文件获取方法的流程图;
图4示意性示出了根据本公开实施例的目标文件解密方法的流程图;
图5示意性示出了根据本公开实施例的目标文件存储方法的流程图;
图6示意性示出了根据本公开一具体实施例的浏览器的数据文件下载示意图;
图7示意性示出了根据本公开实施例的浏览器的数据文件更新装置的结构框图;以及
图8示意性示出了根据本公开实施例的适于浏览器的数据文件更新方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
在本公开的技术方案中,所涉及的数据(如包括但不仅限于用户个人信息)的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
集中处理系统可以并行处理来自多个客户端的浏览器请求。但在实际应用中,随着金融业务的增加,接入集中处理系统的客户端设备也会逐渐增加导致出现请求响应时间长的问题。
相关技术中,一般将数据文件存储至客户端,通过本地加载操作获取数据文件。例如,针对IE浏览器,通过在浏览器内嵌入基于ActiveX技术的ocx组件,实现对客户端本地文件的读写操作;针对Chrome、FireFox等浏览器,通过在浏览器内嵌入NPAPI、PPAPI组件,实现客户端本地文件的读写操作。
由于ocx组件只适用于安装windows系统的客户端设备,NPAPI和PPAPI组件的应用条件苛刻,因此,在实现本地读取操作的过程中,需要编写适用于多种客户端设备和浏览器类型的读取代码,导致增加代码开发成本。
此外,由于多种客户端设备和浏览器类型的控制权限不同,无法通过统一的执行代码适配多种浏览器,只能针对多种浏览器开发对应的执行代码,导致进一步增加了开发成本和后续维护成本。
本公开的实施例提供了一种浏览器的数据文件更新方法,应用于客户端设备,该方法响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互,目标文件存储于存储器的预设存储地址,包括与更新指令对应的资源文件;对目标文件进行解密,得到明文信息;以及根据明文信息更新浏览器。
图1示意性示出了根据本公开实施例的浏览器的数据文件更新方法的应用场景。
如图1所示,根据该实施例的应用场景100包括服务端和客户端的交互操作。具体地,应用场景100包括设置于服务端的应用服务器101和文件存储器102,设置于客户端设备的浏览器103、目标服务104和本地文件存储器104。
文件存储器102可以包括与应用服务器101不同的多个服务器或服务器集群,用于存储用于部署或更新浏览器的版本文件、配置文件或静态资源文件等多种类型的文件。文件存储器102还可以设置于应用服务器101内。
应用服务器101用于接收来自浏览器103的请求,从文件存储器102获取浏览器103请求的文件,并将获取的文件返回浏览器103。其中,应用服务器101可以通过多个服务器或服务器集群接收来自多个浏览器的请求,并返回对应的数据文件。
客户端设备可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、自助操作设备等等。
客户端设备可以安装多种类型的执行设备,例如windows系统、Linux系统或Android系统等。安装于客户端设备内的浏览器103可以包括多种内核的执行引擎,例如,基于Chrome内核的多种浏览器。
目标服务104用于与浏览器103和本地存储器105进行交互,在浏览器103和本地文件存储器105之间进行文件传输操作。其中,目标服务104包括JavaScript运行环境,通过JavaScript代码实现事件驱动。
本地文件存储器105可以包括多种类型的存储器,如虚拟存储设备或物理存储设备。
需要说明的是,本公开实施例所提供的浏览器的数据文件更新方法一般可以由客户端设备执行。相应地,本公开实施例所提供的浏览器的数据文件更新装置一般可以设置于客户端设备中。
应该理解,图1中的客户端设备、存储器和应用服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端设备、存储器和应用服务器。
以下将基于图1描述的场景,通过图2~图6对公开实施例的浏览器的数据文件更新方法进行详细描述。
图2示意性示出了根据本公开实施例的浏览器的数据文件更新方法的流程图。
如图2所示,该方法包括操作S210~S230。
在操作S210,响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互。
根据本公开的实施例,浏览器可以通过浏览器界面实现与用户之间的交互,通过浏览器后台服务实现与客户端设备或应用浏览器之间的交互。用户在浏览器界面进行操作时,浏览器产生与该操作对应的更新指令;浏览器后台服务根据该更新指令产生读取请求,加载目标文件以更新浏览器界面。其中,浏览器加载的目标文件可以是多种类型的数据文件。例如,可以是视频文件、页面文件或音频文件等。
根据本公开的实施例,响应于检测到的更新指令,浏览器后台服务通过向目标服务发起读取请求,通过目标服务从存储器内获取目标文件。其中,目标服务分别与浏览器和存储器进行交互,间接实现浏览器和存储器之间的文件传输。
根据本公开的实施例,目标服务可以包括JavaScript运行环境,与浏览器采用相同的JavaScript编码体系,通过JavaScript实现与浏览器和存储器之间的交互。
例如,目标服务可以是基于Chrome V8引擎的JavaScript运行环境,Nodejs服务。Nodejs服务通过采用事件驱动、非阻塞式I/O模型实现与浏览器和存储器之间的交互。
目标文件存储于存储器的预设存储地址,包括与更新指令对应的资源文件。例如,目标文件可以是访问历史文件或操作日志;还可以是用于更新浏览器功能的版本文件。
在操作S220,对目标服务返回的目标文件进行解密,得到明文信息。
根据本公开的实施例,在通过目标服务获取目标文件之后,浏览器接收目标服务返回的目标文件。由于存储于本地的目标文件为加密后的文件,因此,在接收目标文件之后,利用解密方法对目标文件进行解密,得到明文信息。
根据本公开的实施例,目标文件是从应用服务器上预先下载至客户端设备的,以便在多客户端、高并发场景下,减少指令响应时间。
根据本公开的实施例,应用服务器在将资源文件返回客户端设备时,通过加密方法对资源文件进行加密,得到上述目标文件。具体地,应用服务器可以采用多种加密方法对文件进行加密,浏览器可以采用多种解密方法对目标文件进行解密,其中,上述加密方法和上述解密方法相对应,以保证客户端设备无法修改存储于客户端本地的目标文件。
在操作S230,根据明文信息更新浏览器的浏览器界面。
根据本公开的实施例,在浏览器对目标文件进行解密,得到明文信息之后,可以根据明文信息调用对应的浏览器组件更新浏览器界面。
例如,以目标文件为收藏夹信息为例,明文信息包括收藏夹信息和浏览器界面的展示参数。浏览器在对目标文件进行解密得到明文信息后,通过渲染组件对展示参数和收藏夹信息进行处理,更新浏览器界面,使得浏览器界面上展示具体的收藏夹信息。
本公开的实施例响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件;对目标文件进行解密,得到明文信息;以及根据明文信息更新浏览器的浏览器界面,实现了适用于多种客户端设备、多种浏览器种类的文件更新。本公开的实施例通过在浏览器和本地文件之间设置了目标服务,根据目标服务的统一文件处理操作,即可实现文件的读取和更新,无需针对多种浏览器类型、多种客户端设备编写多种更新方法,也无需针对多样的更新方法设置多种维护手段,实现了减少代码编写工作量、降低开发和维护浏览器成本的技术效果。
此外,本公开的实施例通过目标服务间接实现浏览器与本地存储器之间的交互,在不同浏览器环境中仍然可以建立统一的调用接口,实现了跨浏览器的数据文件更新。
图3示意性示出了根据本公开实施例的目标文件获取方法的流程图。
如图3所示,该实施例的目标文件获取方法包括操作S311~操作S312,可以作为操作S210的一个具体实施例。
在操作S311,响应于确定浏览器与目标服务之间已建立第一连接,根据更新指令生成读取请求,其中,第一连接为基于目标协议的连接,用于允许浏览器和目标服务之间进行交互。
根据本公开的实施例,浏览器和目标服务之间基于目标协议进行通信。由此,在浏览器和目标服务进行交互之前,需要建立基于目标协议的第一连接。
其中,目标协议包括适用于应用程序之间的通信协议,包括传输控制协议(Transmission Control Protocol,TCP)以及基于TCP协议衍生的其他协议。例如,在单个TCP连接上进行全双工通信的WebSocket协议。
根据本公开的实施例,在通过目标服务获取目标文件的过程中,首先确定浏览器和目标服务之间是否已建立第一连接。在确定已建立第一连接的情况下,根据更新指令生成读取请求。具体地,可以根据目标协议规定的传输格式根据更新指令生成读取请求。
根据本公开的实施例,读取请求用于向目标服务请求读取目标文件。浏览器生成读取请求之后,向目标服务发送该读取请求,以便目标服务根据该读取请求从存储器获取目标文件。
根据本公开的实施例,在确定浏览器和目标服务之间未建立第一连接的情况下,通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口,调用接口用于在多种类型的浏览器和所述目标服务之间建立连接;以及根据调用接口,在浏览器和目标服务之间建立第一连接。
具体地,在确定浏览器和目标服务之间未建立第一连接的情况下,浏览器通过JavaScript程序确定用于建立WebSocket连接的调用接口。浏览器通过调用该调用接口与目标服务之间建立起WebSocket连接。
其中,调用接口可以是应用程序编程(Application Programming Interface,API)接口(Application Programming Interface,API)。
根据本公开的实施例,多种类型的浏览器均可以通过调用接口与目标服务建立连接,由此,多种类型的浏览器在通过目标服务获取本地目标文件的过程中,无需编写适配多种类型的浏览器的文件读取方法,仅通过目标服务即可解除浏览器与系统之间的限制条件,实现本地目标文件的读取和更新。
根据本公开的实施例,预设执行代码可以是适用于多种浏览器类型的JavaScript程序,以便通过调用统一的执行代码,获取适用多个浏览器的调用接口,实现浏览器和目标服务之间的交互。
根据本公开的实施例,在目标服务和浏览器之间未建立第一连接的情况下,通过预设执行代码可以建立基于WebSocket协议的第一连接,在目标服务和浏览器的后续交互过程中,无需重复建立第一连接,提高了目标服务与浏览器之间的交互处理效率。
在操作S312,利用目标服务,根据读取请求从预设存储地址获取目标文件。
根据本公开的实施例,在浏览器向目标服务发送读取请求之后,目标服务可以接收该读取请求,并根据该读取请求内的预设存储地址获取目标文件。其中,读取请求内的预设存储地址可以是URL地址。
根据本公开的实施例,利用目标服务,根据读取请求从预设存储地址获取目标文件包括:根据读取请求,确定目标服务内的读取方法;以及根据读取请求内的请求参数,调用读取方法从预设存储地址获取目标文件;将目标文件返回浏览器。
根据本公开的实施例,目标服务在接收到读取请求之后,根据读取请求确定目标服务内的读取方法。具体地,根据读取请求从fs文件组件内确定fs.readFile()读取方法。
在确定fs.readFile()读取方法之后,调用该读取方法根据读取请求内的请求参数获取目标文件。其中,请求参数包括目标文件的预设存储地址、读取格式以及返回结果。
例如,以目标服务为Nodejs服务为例。Nodejs服务在接收到读取请求后,调用fs文件组件读取本地目标文件,并基于WebSocket连接将读取的目标文件发送回浏览器。
本公开的实施例通过利用目标服务,基于统一的读取请求获取目标文件,无需生成与浏览器对应多种读取请求,也无需在目标服务内建立多个对应操作,即可实现获取目标文件。在保证目标服务适用于多个浏览器的同时,很大程度上减少了代码的编写工作量。
图4示意性示出了根据本公开实施例的目标文件解密方法的流程图。
如图4所示,该实施例的目标文件解密方法包括操作S421~操作S422,可以作为操作S220的一个具体实施例。
在操作S421,响应于接收到目标服务返回的目标文件,获取解密密钥,其中,解密密钥与应用服务器采用的加密密钥相对应。
在操作S422,根据解密密钥对目标文件进行解密,得到明文信息。
根据本公开的实施例,目标文件包括在应用服务器对更新文件进行加密后的文件。应用服务器可以通过交互支持浏览器的多种应用功能。应用服务器可以采用加密密钥对资源文件进行加密,并将加密后的目标文件返回浏览器。
在浏览器对目标文件进行解密之前,通过预先与应用服务器的交互确定应用服务器采用的加密密钥,由此确定待进行解密的解密密钥。在对目标文件进行解密时,可以直接利用解密密钥进行解密,得到明文信息。
其中,解密密钥和加密密钥相对应。加密密钥可以为一段随机排列的字符串序列,解密密钥可以是与加密密钥相反的字符串序列。
例如,加密密钥为XYZXYZ123。浏览器与应用服务器通过交互确定获取解密密钥的方法为对加密密钥进行反序列运算。由此,根据加密密钥可以得到解密密钥为321ZYXZYX。
根据本公开的实施例,应用服务器还可以通过预设加密算法产生加密密钥,对资源文件进行加密;浏览器通过与加密算法对应的解密算法产生解密密钥,对目标文件进行解密。
由于目标文件为加密文件,通过解密得到明文信息之后再更新浏览器界面,避免目标文件在客户端本地产生误改等问题,提高了文件更新的安全性。
图5示意性示出了根据本公开实施例的目标文件存储方法的流程图。
如图5所示,该实施例的目标文件存储方法包括操作S510~操作S530,可以设置于操作S210~操作S230之前。
在操作S510,响应于检测到用户的登录状态为已登录,向应用服务器发送下载请求,下载请求用于从应用服务器下载M个更新文件和更新文件的更新日期,更新文件包括目标文件,M大于等于1。
在操作S520,接收M个更新文件和M个更新日期,并将M个更新文件和M个更新日期返回浏览器;
在操作S530,利用目标服务,根据更新日期将M个更新文件存储至预设存储地址。
根据本公开的实施例,在获取目标文件并更新浏览器界面之前,浏览器可以通过与应用服务器进行交互,将资源文件或最新版本的浏览更新文件存储至本地客户端。
根据本公开的实施例,在打开浏览器界面并且登录之后,客户端设备可以检测到用户的登录状态为已登录。在确定登录状态为已登录之后,客户端设备可以在后台自动向应用服务器发送批量下载更新文件的下载请求,在后台实现目标文件以及其他更新文件的批量下载。
在用户执行对应的页面操作时,浏览器页面可以直接从客户端设备中获取目标文件。由于目标文件已经存储在本地设备内,获取文件的过程不涉及网络传输和等待,因此,在用户执行页面操作时,可以快速地更新浏览器页面。
根据本公开的实施例,用户可以在浏览器界面执行下载操作,浏览器根据该下载操作产生下载指令。浏览器后台服务检测到针对该下载操作的下载指令之后,向应用服务器发送用于下载目标文件的下载请求,如http请求。
应用服务器接收到来自浏览器的http下载请求,从文件存储器读取文件内容,得到M个资源文件以及应用服务器配置M个资源文件的更新日期。通过预设加密算法加密资源文件,得到M个更新文件。其中,更新文件包括目标文件。在得到目标文件之后,将资源文件的更新日期作为目标文件的更新日期,与目标文件一起返回浏览器。
浏览器根据应用服务器返回的结果获取M个更新文件和M个更新文件的更新日期,然后将更新文件和更新日期发送至目标服务,利用目标服务,根据更新日期将批量下载的M个更新文件存储至预设存储地址。
对于从应用服务器下载文件的场景,本公开的实施例仍然通过目标服务实现目标文件存储,实现适用多个浏览器的多个文件下载和写入,减少了代码编写工作量、降低了开发和维护文件下载方法、写入方法的人工成本。
根据本公开的实施例,利用目标服务,根据更新日期将M个更新文件存储至预设存储地址,包括:
目标服务在接收更新日期和更新文件之后,利用目标组件比较M个更新文件的更新日期和M个最近更新文件的更新日期,得到比较结果,最近更新文件存储于预设存储地址;以及
响应于比较结果表征M个更新文件的更新日期晚于M个最近更新文件的更新日期,利用M个更新文件替换M个最近更新文件。
根据本公开的实施例,最近更新文件存储于预设存储地址,包括更新文件所属应用功能的资源文件。具体地,最近更新文件可以是更新文件的上个版本文件。
例如,最近更新文件为用于更新浏览器版本的资源文件,如V1.0版本文件。更新文件包括目标文件,为最新浏览器版本的资源文件,如V2.0版本文件。
目标服务在接收更新日期和更新文件之后,调用fs文件组件比对M个最近更新文件的更新日期和M个更新文件的更新日期,得到比较结果。其中,比较结果可以是“当前文件已为最新版本文件”或“当前文件不是最新版本文件”。
响应于比较结果表征目标文件的更新日期晚于最近更新文件的更新日期,目标服务通过调用目标组件的写入方法,利用M个文件替换M个最近更新文件。
具体地,在M个更新文件更新日期晚于M个最近更新文件的更新日期时,调用fs文件组件的fs.writeFile()方法,在预设存储地址中覆盖M个最近更新文件并写入M个更新文件。通过将M个更新文件的更新日期与最近更新文件的更新日期进行比较,保证存储器始终存储最新的更新文件。并且,通过覆盖最新更新文件可以避免因文件版本返回错误产生更新问题。
根据本公开的实施例,在利用目标服务,根据更新日期将M个更新文件存储至预设存储地址之前,包括:通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口;以及
根据调用接口,在浏览器和目标服务之间建立第二连接,以便将更新文件存储至预设存储地址,第二连接为基于目标协议的连接。
根据本公开的实施例,与文件更新流程类型,在利用目标服务将更新文件存储至预设存储地址之前,需要在目标服务与浏览器之间建立基于目标协议的第二连接。
具体地,浏览器可以根据预先编写的JavaScript程序调用WebSocket API接口,与目标服务建立起WebSocket连接,即第二连接。在浏览器和目标服务之间建立第二连接之后,浏览器将加密后的更新文件、更新日期发送到目标服务,以便利用目标服务根据更新日期将更新文件存储至预设存储地址。
根据本公开的实施例,在从应用服务器下载目标文件之前,部署应用服务器和应用war包。其中,war包中包含系统服务功能网页及后台服务应用功能等多种浏览器应用功能。具体地,应用服务器可以是在应用服务器上安装的Tomcat服务。
在检测更新指令之前,需要在客户端设备上安装目标服务并配置客户端环境参数。具体地,可以根据客户端设备操作系统的不同,安装不同版本的目标服务,如对于Linux内核的系统安装node-v*.*.*-linux-x64.tar.xz版本包,对于Windows系统安装node-v*.*.*-win-x64.zip的安装包。需要说明的是,针对不同操作系统,目标服务虽然存在不同的安装包,但是安装包均支持JavaScript程序,内部的执行逻辑代码相同或相似。
根据本公开的实施例,在安装目标服务的版本包之后,还可以采用npm install命令安装ws、fs文件组件,分别用于启动建立WebSocket连接的服务和执行本地文件读取和写入操作。
根据本公开的实施例,在检测到下载指令或更新指令之前,在客户端设备启动目标服务,在应用服务器启动Tomcat服务。在启动目标服务之后,还可以通过node server.js命令在客户端设备启动建立WebSocket连接的服务。
根据本公开的实施例,在客户端设备向应用服务器发送下载请求,从应用服务器下载M个更新文件和M个更新文件的更新日期的过程中,应用服务器接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;根据M个资源文件标识生成目标下载任务,并将目标下载任务添加至执行队列;执行目标下载任务,下载M个资源文件和M个资源文件的更新日期;利用加密秘钥对M个资源文件进行加密,得到M个更新文件;以及将加密后的M个更新文件和M个更新日期返回客户端设备。
根据本公开的实施例,应用服务器接收到来自客户端设备发送的下载请求之后,响应于下载请求,增量获取应用服务器从预设更新日期至当前时刻新增的M个更新文件标识。由于更新文件的下载是客户端设备的后台下载,为了保证用户无感更新浏览器界面,因此,需要限制更新文件的数目。
通过增量获取从预设更新日期至当前时刻内新增的M个更新文件标识,使得应用服务器无需全量扫描全部文件,即可迅速获取较新的M个更新文件标识。
在满足预设条件的情况下,根据M个更新文件标识生成与当前用户对应的目标下载任务,并将目标下载任务添加至执行队列。应用服务器按照先进先出的原则处理执行队列内的下载任务,完成M个资源文件的下载和加密,得到更新文件和更新日期。
根据本公开的实施例,其中,根据M个更新文件标识生成目标下载任务,并将目标下载任务添加至执行队列,包括:获取执行队列内下载任务的用户数目;在确定用户数目不超过预设阈值的情况下,生成目标下载任务,并将目标下载任务添加至执行队列;在确定用户数目超过预设阈值的情况下,根据M个资源文件标识生成等待任务,并将等待任务添加至等待队列;以及在等待队列内、等待任务之前的用户数目和执行队列内的用户数目的总和小于或等于预设阈值的情况下,将等待任务作为目标下载任务添加至执行队列。
根据本公开的实施例,应用服务器内存储有多个资源文件,多个用户通过多个客户端设备向应用服务器发送下载请求时,由于带宽的限制,应用服务器无法同时执行全部客户端设备的下载请求。
由此,应用服务器在接收到来自客户端设备的下载请求之后,下载更新文件之前,获取执行队列内下载任务的用户数目。具体地,根据客户端设备的标识确定用户数目,还可以根据下载请求的标识确定用户数目。一个用户可以下载多个更新文件。为了保证下载线路的通畅,在确定用户数目不超过预设阈值的情况下,根据M个资源文件标识生成目标下载任务,并将下载任务加入执行队列。应用服务器根据执行队列内执行任务的顺序,下载资源文件。
根据本公开的实施例,预设阈值可以为10,保证同时执行来自10个用户的下载任务。
根据本公开的实施例,在确定用户数目超过预设阈值的情况下,如,在确定用户数目超过10个的情况下,可以先根据M个资源文件标识生成等待任务,并将等待任务添加至等待队列。等待队列可以作为一个缓存队列,用于缓存待加入执行队列的下载任务。
由于执行队列对用户数目进行了限定,通过提前在缓存的等待队列内生成等待任务,在等待队列内、等待任务之前的用户数目和执行队列内的用户数目的总和小于或等于预设阈值的情况下,可以直接将等待任务作为目标下载任务添加至执行队列末,以便执行队列按照顺序执行下载任务,无需重新生成目标下载任务。
面对高并发多用户下载场景,本公开首先通过限制用户数目保证网络通道的通畅;其次,由于在等待队列内已经生成任务,在前方用户完成下载时可以直接进行下载,减少了用户等待时间。
图6示意性示出了根据本公开一具体实施例的浏览器的数据文件下载示意图。
如图6所示,文件更新场景600包括服务端上安装的Tomcat服务601、客户端设备上安装的Chrome浏览器602、Nodejs服务603和本地文件夹604。
用户可以在Chrome浏览器602的浏览器界面进行下载操作并产生下载指令,浏览器的在检测到下载指令后,向Tomcat服务601发送下载请求。Tomcat服务601根据接收到的下载请求,读取文件,加密返回目标文件及更新日期。具体地,Tomcat服务601可以根据下载请求读取资源文件,并将资源文件进行加密并得到目标文件。在得到目标文件之后,Tomcat服务601将目标文件及目标文件的更新日期返回Chrome浏览器602。
Chrome浏览器602通过与Nodejs服务603建立WebSocket连接。在建立WebSocket连接之后,将更新日期加密后的目标文件发送到Nodejs服务603。
Nodejs服务603通过调用fs文件组件比较最近更新文件的更新日期和目标文件的更新日期,得到比较结果。响应于比较结果表征目标文件的更新日期晚于最近更新文件的更新日期,Nodejs服务603将目标文件存储至本地文件夹604。
图7示意性示出了根据本公开实施例的浏览器的数据文件更新装置的结构框图。
如图7所示,该实施例的浏览器的数据文件更新装置700应用于客户端设备,包括获取模块710、解密模块720和更新模块730。
获取模块710,用于响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,目标服务分别与浏览器和存储器进行交互,目标文件存储于存储器的预设存储地址,目标文件包括与更新指令对应的资源文件。在一实施例中,获取模块710,可以用于执行前文描述的操作S210,在此不再赘述。
解密模块720,用于对目标服务返回的目标文件进行解密,得到明文信息。在一实施例中,解密模块720可以用于执行前文描述的操作S220,在此不再赘述。
更新模块730,用于根据明文信息更新浏览器的浏览器界面。在一实施例中,更新模块730可以用于执行前文描述的操作S230,在此不再赘述。
根据本公开的实施例,获取模块710包括第一获取单元和第二获取单元。
第一获取单元用于响应于确定浏览器与目标服务之间已建立第一连接,根据更新指令生成读取请求,其中,第一连接为基于目标协议的连接,用于允许浏览器和目标服务之间进行交互,读取请求用于向目标服务请求读取目标文件。在一实施例中,第一获取单元可以用于执行前文描述的操作S311,在此不再赘述。
第二获取单元用于利用目标服务,根据读取请求从预设存储地址获取目标文件。在一实施例中,第二获取单元可以用于执行前文描述的操作S312,在此不再赘述。
根据本公开的实施例,第二获取单元包括第一获取子单元、第二获取子单元和第三获取子单元。
第一获取子单元用于根据读取请求,确定目标服务内的读取方法。
第二获取子单元用于根据读取请求内的请求参数,调用读取方法从预设存储地址获取目标文件。
第三获取子单元用于将所述目标文件返回所述浏览器。
根据本公开的实施例,获取模块710还包括执行单元和第一连接单元。
执行单元用于响应于确定浏览器与目标服务之间未建立第一连接,通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口,调用接口用于在多种类型的浏览器和所述目标服务之间建立连接。
第一连接单元用于根据调用接口,在浏览器和目标服务之间建立第一连接。
根据本公开的实施例,解密模块720包括第一解密单元和第二解密单元。
第一解密单元用于响应于接收到目标服务返回的目标文件,获取解密密钥,其中,解密密钥与应用服务器采用的加密密钥相对应。在一实施例中,第一解密单元可以用于执行前文描述的操作S421,在此不再赘述。
第二解密单元用于根据解密密钥对目标文件进行解密,得到明文信息。在一实施例中,第二解密单元可以用于执行前文描述的操作S422,在此不再赘述。
根据本公开的实施例,浏览器的数据文件更新装置700还包括下载模块、第一存储模块和第二存储模块。
下载模块用于响应于用户的登录状态为已登录,向应用服务器发送下载请求,所述下载请求用于从应用服务器下载M个更新文件和所述更新文件的更新日期,所述更新文件包括所述目标文件,M大于等于1。在一实施例中,下载模块可以用于执行前文描述的操作S510,在此不再赘述。
第一存储模块用于接收M个所述更新文件和M个所述更新日期,并将M个所述更新文件和M个所述更新日期返回所述浏览器,其中,所述更新日期用于表征所述应用服务器配置所述更新文件的日期。在一实施例中,第一存储模块可以用于执行前文描述的操作S520,在此不再赘述。
第二存储模块用于利用目标服务,根据更新日期将M个更新文件存储至预设存储地址在一实施例中,第二存储模块可以用于执行前文描述的操作S530,在此不再赘述。
根据本公开的实施例,存储模块包括第一存储单元和第二存储单元。
第一存储单元用于目标服务在接收更新日期和更新文件之后,利用目标组件比较M个更新文件的更新日期和M个最近更新文件的更新日期,得到比较结果,最近更新文件存储于预设存储地址。
第二存储单元用于响应于比较结果表征M个更新文件的更新日期晚于M个最近更新文件的更新日期,利用M个更新文件替换M个最近更新文件。
根据本公开的实施例,存储模块还包括第二连接单元和第三连接单元。
第二连接单元用于通过与浏览器相关联的预设执行代码,确定与目标协议对应的调用接口。
第三连接单元用于根据调用接口,在浏览器和目标服务之间建立第二连接,以便将更新文件存储至预设存储地址,第二连接为基于目标协议的连接。
根据本公开的实施例,获取模块710、解密模块720和更新模块730中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,获取模块710、解密模块720和更新模块730中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块710、解密模块720和更新模块730中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
根据本公开的实施例,应用于应用服务器的浏览器的数据文件更新装置包括接收模块、生成模块、执行模块、加密模块和返回模块。
接收模块,用于接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;
生成模块,用于根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至所述执行队列;
执行模块,用于执行所述目标下载任务,下载M个资源文件和M个所述资源文件的更新日期;以及
加密模块,用于利用加密秘钥对M个所述资源文件进行加密,得到M个更新文件;以及
返回模块,用于将加密后的所述M个更新文件和M个更新日期返回所述客户端设备。
根据本公开的实施例,生成模块包括获取子模块、第一生成子模块、第二生成子模块和第三生成子模块。
获取子模块用于获取执行队列内下载任务的用户数目。
第一生成子模块用于在确定所述用户数目不超过预设阈值的情况下,生成所述目标下载任务,并将所述目标下载任务添加至所述执行队列。
第二生成子模块用于在确定所述用户数目超过预设阈值的情况下,根据所述M个资源文件标识生成等待任务,并将所述等待任务添加至等待队列。
第三生成子模块用于在所述等待任务之前的用户数目和所述执行队列内的用户数目的总和小于或等于所述预设阈值的情况下,将所述等待任务作为所述目标下载任务添加至所述执行队列。
图8示意性示出了根据本公开实施例的适于浏览器的数据文件更新方法的电子设备的方框图。
如图8所示,根据本公开实施例的电子设备800包括处理器801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。处理器801例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器801还可以包括用于缓存用途的板载存储器。处理器801可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 803中,存储有电子设备800操作所需的各种程序和数据。处理器801、ROM802以及RAM 803通过总线804彼此相连。处理器801通过执行ROM 802和/或RAM 803中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 802和RAM 803以外的一个或多个存储器中。处理器801也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备800还可以包括输入/输出(I/O)接口805,输入/输出(I/O)接口805也连接至总线804。电子设备800还可以包括连接至I/O接口805的以下部件中的一项或多项:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 802和/或RAM 803和/或ROM 802和RAM 803以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机系统中运行时,该程序代码用于使计算机系统实现本公开实施例所提供的浏览器的数据文件更新方法。
在该计算机程序被处理器801执行时执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分809被下载和安装,和/或从可拆卸介质811被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被处理器801执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (15)
1.一种浏览器的数据文件更新方法,应用于客户端设备,该方法包括:
响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,所述目标服务分别与所述浏览器和存储器进行交互,所述目标文件存储于所述存储器的预设存储地址,包括与所述更新指令对应的资源文件;
对所述目标服务返回的所述目标文件进行解密,得到明文信息;以及
根据所述明文信息更新所述浏览器的浏览器界面。
2.根据权利要求1所述的方法,其中,所述响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,包括:
响应于确定所述浏览器与所述目标服务之间已建立第一连接,根据所述更新指令生成读取请求,其中,所述第一连接为基于目标协议的连接,用于允许所述浏览器和所述目标服务之间进行交互,所述读取请求用于向所述目标服务请求读取所述目标文件;以及
利用所述目标服务,根据所述读取请求从所述预设存储地址获取所述目标文件。
3.根据权利要求2所述的方法,其中,所述利用所述目标服务,根据所述读取请求从所述预设存储地址获取所述目标文件,包括:
根据所述读取请求,确定所述目标服务内的读取方法;
根据所述读取请求内的请求参数,调用所述读取方法从所述预设存储地址获取所述目标文件;以及
将所述目标文件返回所述浏览器。
4.根据权利要求2所述的方法,其中,响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,还包括:
响应于确定所述浏览器与所述目标服务之间未建立所述第一连接,通过与所述浏览器相关联的预设执行代码,确定与所述目标协议对应的调用接口,所述调用接口用于在多种类型的浏览器和所述目标服务之间建立连接;以及
根据所述调用接口,在所述浏览器和所述目标服务之间建立所述第一连接。
5.根据权利要求1所述的方法,其中,所述目标文件包括在应用服务器对资源文件进行加密后的文件,所述应用服务器用于支持所述浏览器的多种应用功能;
所述对所述目标文件进行解密,得到明文信息,包括:
响应于接收到所述目标服务返回的所述目标文件,获取解密密钥,其中,所述解密密钥与所述应用服务器采用的加密密钥相对应;以及
根据所述解密密钥对所述目标文件进行解密,得到所述明文信息。
6.根据权利要求1所述的方法,其中,在所述响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件之前,还包括:
响应于检测到用户的登录状态为已登录,向应用服务器发送下载请求,所述下载请求用于从应用服务器下载M个更新文件和所述更新文件的更新日期,所述更新文件包括所述目标文件,M大于等于1;
接收M个所述更新文件和M个所述更新日期,并将M个所述更新文件和M个所述更新日期返回所述浏览器,其中,所述更新日期用于表征所述应用服务器配置所述更新文件的日期;以及
利用所述目标服务,根据所述更新日期将M个所述更新文件存储至所述预设存储地址。
7.根据权利要求6所述的方法,其中,所述利用所述目标服务,根据所述更新日期将M个所述更新文件存储至所述预设存储地址,包括:
所述目标服务在接收所述更新日期和所述更新文件之后,利用目标组件比较M个所述更新文件的更新日期和M个最近更新文件的更新日期,得到比较结果,所述最近更新文件存储于所述预设存储地址;以及
响应于所述比较结果表征M个所述更新文件的更新日期晚于M个所述最近更新文件的更新日期,利用M个所述更新文件替换M个所述最近更新文件。
8.根据权利要求6所述的方法,其中,在利用所述目标服务,根据所述更新日期将M个所述更新文件存储至所述预设存储地址之前,包括:
通过与所述浏览器相关联的预设执行代码,确定与目标协议对应的调用接口;以及
根据所述调用接口,在所述浏览器和所述目标服务之间建立第二连接,以便将所述更新文件存储至所述预设存储地址,所述第二连接为基于目标协议的连接。
9.一种浏览器的数据文件更新方法,应用于应用服务器,该方法包括:
接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;
根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至执行队列;
执行所述目标下载任务,下载M个资源文件和M个所述资源文件的更新日期;
利用加密秘钥对M个所述资源文件进行加密,得到M个更新文件;以及
将加密后的所述M个更新文件和M个所述更新日期返回所述客户端设备。
10.根据权利要求9所述的方法,其中,所述根据所述M个资源文文件标识生成目标下载任务,并将所述目标下载任务添加至执行队列,包括:
获取执行队列内下载任务的用户数目;
在确定所述用户数目不超过预设阈值的情况下,生成所述目标下载任务,并将所述目标下载任务添加至所述执行队列;
在确定所述用户数目超过预设阈值的情况下,根据所述M个资源文件标识生成等待任务,并将所述等待任务添加至等待队列;以及
在所述等待任务之前的用户数目和所述执行队列内的用户数目的总和小于或等于所述预设阈值的情况下,将所述等待任务作为所述目标下载任务添加至所述执行队列。
11.一种浏览器的数据文件更新装置,应用于客户端设备,该装置包括:
获取模块,用于响应于检测到针对浏览器的更新指令,通过目标服务获取目标文件,所述目标服务分别与所述浏览器和存储器进行交互,所述目标文件存储于所述存储器的预设存储地址,所述目标文件包括与所述更新指令对应的资源文件;
解密模块,用于对所述目标文件进行解密,得到明文信息;以及
更新模块,用于根据所述明文信息更新所述浏览器的浏览器界面。
12.一种浏览器的数据文件更新装置,应用于应用服务器,该装置包括:
接收模块,用于接收来自客户端设备的下载请求,获取从预设更新日期至当前时刻新增的M个资源文件标识,M大于等于1;
生成模块,用于根据所述M个资源文件标识生成目标下载任务,并将所述目标下载任务添加至执行队列;
执行模块,用于执行所述目标下载任务,下载M个资源文件和M个所述资源文件的更新日期;以及
加密模块,用于利用加密秘钥对M个所述资源文件进行加密,得到M个更新文件;以及
返回模块,用于将加密后的所述M个更新文件和M个所述更新日期返回所述客户端设备。
13.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~10中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~10中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310008125.8A CN116010740A (zh) | 2023-01-04 | 2023-01-04 | 浏览器的数据文件更新方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310008125.8A CN116010740A (zh) | 2023-01-04 | 2023-01-04 | 浏览器的数据文件更新方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116010740A true CN116010740A (zh) | 2023-04-25 |
Family
ID=86031550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310008125.8A Pending CN116010740A (zh) | 2023-01-04 | 2023-01-04 | 浏览器的数据文件更新方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116010740A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795793A (zh) * | 2023-06-26 | 2023-09-22 | 珠海精实测控技术股份有限公司 | 基于标准化文件的数据交互方法、装置及存储介质 |
-
2023
- 2023-01-04 CN CN202310008125.8A patent/CN116010740A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116795793A (zh) * | 2023-06-26 | 2023-09-22 | 珠海精实测控技术股份有限公司 | 基于标准化文件的数据交互方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10127057B2 (en) | Method and apparatus for dynamically implementing application function | |
KR102107708B1 (ko) | 자동 애플리케이션 업데이트 | |
US11797636B2 (en) | Intermediary server for providing secure access to web-based services | |
CN111159614B (zh) | 网页资源获取方法以及装置 | |
US7596610B2 (en) | Method and system for installing applications via a display page | |
US10353718B2 (en) | Providing access to a remote application via a web client | |
US9569240B2 (en) | Method and system to provision and manage a computing application hosted by a virtual instance of a machine | |
US20190294328A1 (en) | Virtualizing non-volatile storage at a peripheral device | |
US20160364200A1 (en) | Remote desktop exporting | |
US8468541B2 (en) | Event driven sendfile | |
US8676939B2 (en) | Dynamic configuration of applications deployed in a cloud | |
US20130326502A1 (en) | Installing applications remotely | |
US20140047427A1 (en) | Concurrent embedded application update and migration | |
US10776236B1 (en) | Transferrable containerized applications for remote-access client-server environments | |
US11412056B2 (en) | Techniques for proxying network requests using service workers | |
US11089081B1 (en) | Inter-process rendering pipeline for shared process remote web content rendering | |
CN112596757A (zh) | 一种云桌面虚拟机代理组件升级方法、装置及存储介质 | |
CN116010740A (zh) | 浏览器的数据文件更新方法、装置、电子设备及存储介质 | |
US9998559B2 (en) | Preemptive caching of data | |
US10776133B2 (en) | Preemptive loading of code dependencies for improved performance | |
US20160117304A1 (en) | Standalone document management method | |
US20180260571A1 (en) | Automatically Reducing An Attack Surface of an Application Program on a Computing Device | |
US20140164556A1 (en) | Method and system for live loading of a toolbar | |
CN113347250B (zh) | 数据访问方法、数据访问装置、电子设备及可读存储介质 | |
US11979418B2 (en) | Detecting potential malicious use of a resource management agent using a resource management log |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |