插件的安装方法、装置、系统、设备及存储介质

文档序号:1963486 发布日期:2021-12-14 浏览:13次 >En<

阅读说明:本技术 插件的安装方法、装置、系统、设备及存储介质 (Plug-in installation method, device, system, equipment and storage medium ) 是由 田新超 赵志远 黄亚洲 霍海涛 于 2020-05-26 设计创作,主要内容包括:本发明公开了一种插件的安装方法、装置、系统、设备及存储介质,所述插件的安装方法包括以下步骤:当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取所述访问请求对应的第一URL;获取所述插件配置数据对应的插件文件,确定所述插件配置数据中与所述插件文件对应的第二URL;若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件;若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。本发明实现了插件文件的自动安装,避免了由于业务系统无法自动安装插件,导致业务系统处于故障状态的情况,从而提高了客户端中业务系统的运行效率。(The invention discloses a method, a device, a system, equipment and a storage medium for installing a plug-in, wherein the method for installing the plug-in comprises the following steps: when an access request for accessing a client website is detected, acquiring prestored plugin configuration data and acquiring a first URL (uniform resource locator) corresponding to the access request; acquiring a plug-in file corresponding to the plug-in configuration data, and determining a second URL (uniform resource locator) corresponding to the plug-in file in the plug-in configuration data; if the first URL is successfully matched with the second URL, determining whether a plug-in file corresponding to the plug-in configuration data is installed or not according to the plug-in configuration data; and if the plug-in file is determined to be installed, installing the plug-in file according to the plug-in configuration data. The invention realizes the automatic installation of the plug-in file, avoids the condition that the service system is in a fault state because the service system can not automatically install the plug-in, thereby improving the operation efficiency of the service system in the client.)

插件的安装方法、装置、系统、设备及存储介质

技术领域

本发明涉及计算机技术领域,尤其涉及一种插件的安装方法、装置、系统、设备及存储介质。

背景技术

针对企业用户场景,由于其业务系统开发技术不同,常常会在网站中挂载插件来完成业务闭环,通常个体浏览器用户访问该网站时会提示需要下载或更新插件。然而不同的浏览器支持的插件格式不一样,如IE(Internet Explorer,IE网页浏览器)浏览器的Trident内核支持ActiveX格式的插件,Chrome(谷歌浏览器)浏览器的Blink内核支持PPAPI(Pepper Plugin API)/NPAPI(Netscape Plugin API)格式的插件,Firefox(火狐)浏览器的Gecko内核支持NPAPI格式的插件。不同的插件在不同内核下将提供不同的技术支撑,辅助对应的业务系统完成相应操作。

通常情况下,业务系统的Web(World Wide Web,全球广域网)服务会在业务代码中增加<object>或者<embed>标签声明,标签声明的部分就要靠插件来渲染才可以正确显示和交互。IE内核的ActiveX插件需要写入系统注册表,生成CLSID(class identifier,类标识符)绑定网站后,当网站被访问时会自动加载该插件;NPAPI和PPAPI类型的插件不需要写入系统注册表,直接将下载好的插件存储于浏览器插件目录下,与网站绑定后当网站被访问时自动加载该插件。针对企业用户场景,由于其业务系统开发技术不同,常常会用到使用插件来完成业务闭环,通常使用IE内核的网站会通过浏览器弹窗提示用户下载和更新插件,使用Chrome内核的网站则不会提示用户直接静默安装,甚至需要用户电脑终端具备相应本地应用程序才可以在浏览器端加载其插件后渲染页面。

因此,在企业用户场景下,会遇到正在运营使用的业务系统其背后开发厂商不具备能力更新插件,即业务系统无法自动安装插件,导致业务系统网站出现漏洞或其他故障问题,企业用户需要付出更多的时间和成本来进行业务变更才可以,即由于业务系统无法自动安装插件,导致业务系统处于故障状态的问题。

发明内容

本发明的主要目的在于提供一种插件的安装方法、装置、系统、设备及存储介质,旨在解决现有的由于业务系统无法自动安装插件,导致业务系统处于故障状态的技术问题。

为实现上述目的,本发明提供一种插件的安装方法,所述插件的安装方法包括步骤:

当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取所述访问请求对应的第一URL;

获取所述插件配置数据对应的插件文件,确定所述插件配置数据中与所述插件文件对应的第二URL;

若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件;

若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

可选地,所述若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件的步骤包括:

若所述第一URL与所述第二URL匹配成功,则获取所述客户端的第一操作系统、第一内核和所述客户端中已安装插件的安装数据;

将所述第一操作系统、所述第一内核、所述安装数据分别与所述插件配置数据进行对比,得到对比结果;

根据所述对比结果确定是否安装所述插件配置数据对应的插件文件。

可选地,所述将所述第一操作系统、所述第一内核、所述安装数据分别与所述插件配置数据进行对比,得到对比结果的步骤包括:

将所述第一操作系统与所述插件配置数据中的第二操作系统进行对比,以及将所述第一内核与所述插件配置数据中的第二内核进行对比;

若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,且所述安装数据满足所述插件配置数据中安装机制对应的安装条件,则得到对比成功的对比结果。

可选地,所述若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,且所述安装数据满足所述插件配置数据中安装机制对应的安装条件,则得到对比成功的对比结果的步骤包括:

若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,则确定所述客户端中的已安装插件文件的插件类型;

根据所述插件类型确定所述插件配置数据中安装机制对应的安装条件;

若所述安装数据满足所述安装条件,则得到对比成功的对比结果。

可选地,所述若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件的步骤包括:

若确定安装所述插件文件,则根据所述插件配置数据确定安装所述插件文件的安装方式,并根据所述安装方式安装所述插件文件。

可选地,所述根据所述安装方式安装所述插件文件的步骤包括:

若所述安装方式为被动安装,则输出提示信息,以根据所述提示信息提示所述客户端的用户触发安装指令;

若侦测到所述安装指令,则根据所述安装指令安装所述插件文件。

可选地,所述当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据的步骤之前,还包括:

当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据;

将所述插件配置数据存储至预设的数组中,其中,在所述数组中,每一插件文件对应的插件配置数据是一个JSON对象。

可选地,所述当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据的步骤包括:

当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中的redis缓存中获取插件配置数据,其中,在所述redis缓存中,所述插件配置数据是以JSON数组的格式存储的。

可选地,所述当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据的步骤包括:

当侦测到获取插件配置数据的获取请求后,获取所述获取请求对应的协议包名;

根据所述协议包名确定服务端对应的域名,通过所述域名和所述获取请求在所述服务端中获取插件配置数据。

可选地,所述当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据的步骤之前,还包括

检测当前时间是否为所述插件配置数据对应的获取时间;

若检测到当前时间为所述插件配置数据对应的获取时间,则触发获取所述插件配置数据的获取请求。

此外,为实现上述目的,本发明还提供一种插件的安装方法,所述插件的安装方法包括:

当服务端接收到客户端发送的获取插件配置数据的获取请求后,根据所述获取请求将所述插件配置数据和所述插件配置数据对应的插件文件发送给客户端;

当所述客户端接收到所述插件配置数据和所述插件文件,且侦测到访问客户端网站的访问请求后,获取所述插件配置数据中与所述插件文件对应的第二URL,并检测所述访问请求对应的第一URL与所述第二URL是否匹配成功;

若所述第一URL与所述第二URL匹配成功,且根据所述插件配置数据确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

可选地,所述当服务端接收到客户端发送的获取插件配置数据的获取请求后,根据所述获取请求将所述插件配置数据和所述插件配置数据对应的插件文件发送给客户端的步骤之前,还包括:

若所述服务端根据所侦测的插件策略配置指令得到插件配置数据后,将所述插件配置数据存储到预设数据库中,以及将所述插件配置数据以JSON数组的格式存储到redis缓存中。

可选地,所述插件的安装方法还包括:

若侦测到更改所述插件配置数据的更改指令后,根据所述更改指令更改所述插件配置数据,其中,所述更改指令至少包括以下一种指令:添加指令、修改指令、删除指令和停用指令。

此外,为实现上述目的,本发明还提供一种插件的安装装置,所述插件的安装装置包括:

获取模块,用于当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取所述访问请求对应的第一URL,获取所述插件配置数据对应的插件文件;

确定模块,用于确定所述插件配置数据中与所述插件文件对应的第二URL;若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件;

安装模块,用于若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

此外,为实现上述目的,本发明还提供一种插件的安装系统,所述插件的安装系统包括客户端和服务端;

所述服务端用于当接收到客户端发送的获取插件配置数据的获取请求后,根据所述获取请求将所述插件配置数据和所述插件配置数据对应的插件文件发送给客户端;

所述客户端用于当接收到所述插件配置数据和所述插件文件,且侦测到访问客户端网站的访问请求后,获取所述插件配置数据中与所述插件文件对应的第二URL,并检测所述访问请求对应的第一URL与所述第二URL是否匹配成功;若所述第一URL与所述第二URL匹配成功,且根据所述插件配置数据确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

此外,为实现上述目的,本发明还提供一种插件的安装设备,所述插件的安装设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的插件的安装程序,所述插件的安装程序被所述处理器执行时实现如联邦学习服务器对应的插件的安装方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有插件的安装程序,所述插件的安装程序被处理器执行时实现如上所述的插件的安装方法的步骤。

本发明通过当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取访问请求对应的第一URL,若第一URL与插件配置数据中的第二URL匹配成功,且根据插件配置数据确定安装插件配置数据对应的插件文件时,则根据插件配置数据安装插件文件,实现了插件文件的自动安装,避免了由于业务系统无法自动安装插件,导致业务系统处于故障状态的情况,从而提高了客户端中业务系统的运行效率。

附图说明

图1是本发明插件的安装方法第一实施例的流程示意图;

图2是本发明插件的安装方法第三实施例的流程示意图;

图3是本发明插件的安装装置较佳实施例的功能示意图模块图;

图4是本发明实施例方案涉及的硬件运行环境的结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

依据本发明提供的一种插件的安装方法,参照图1,图1为本发明插件的安装方法第一实施例的流程示意图。

依据本发明提供的插件的安装方法,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

插件的安装方法应用于客户端中,客户端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)等移动终端,以及诸如数字TV、台式计算机等固定终端。插件的安装方法包括:

步骤S11,当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取所述访问请求对应的第一URL。

当客户端侦测到访问其网站的访问请求后,客户端获取预先存储的插件配置数据。需要说明的是,本实施例中的客户端安装有浏览器,该网站是浏览器对应业务系统的网站。访问请求可为客户端用户在客户端中触发的,也可以是客户端接收到其他终端设备发送的访问请求。插件配置数据至少包括以下一种:插件对应的操作系统、内核、插件类型、插件文件对应的更新范围(install path type)、插件文件的插件安装包、安装机制(issuer)、插件文件名称(file name)、对应网站的URL(Uniform Resource Locator,统一资源定位符)(match URL)、插件下载路径(down load URL)、插件文件的校验值(md5)、插件资源类型(mime_type)、插件对应生效应用的ID(plugin id)、插件名称(plug name)、提示状态(prefab)、插件序号(range_type)、插件版本号(version)和插件文件的安装时机(install time)。进一步地,若插件配置数据对应的插件文件需要注册表,则插件配置数据中还可包括注册表标识(cls id)。

其中,操作系统可为Windows系统或者Linux系统等;内核可为Trident内核、Gecko内核和Blink内核等;插件类型可为ActiveX-IE、NPAPI-Chromium和PPAPI-Chromium等,即插件类型包括但不限于ActiveX插件、NPAPI插件和PPAPI插件;更新范围可为全局更新、应用更新和应用组更新等;插件安装包是插件文件的一种表现形式,当插件安装包为ActiveX插件时,对应的插件文件可为“exe”、“cab”、“msi”等扩展名的文件;NPAPI/PPAPI插件在windows系统下,对应的插件文件可为扩展名为“exe”、“msi”的文件;NPAPI插件或者PPAPI插件在Linux系统下,对应的插件文件可为扩展名为“rpm”、“deb”的文件。不同类型的插件文件对应的安装机制不一样,当插件文件为ActiveX插件时,插件文件的安装机制为插件版本号和/或插件文件变化时,就需要更新客户端中的插件文件;当插件文件为NPAPI插件或者PPAPI插件时,安装机制为插件版本号更新时,就需要更新客户端中的插件文件。在本实施例中,插件文件的校验值是以md5值来表示,在其他实施例中,插件文件的校验值也可用其他哈希值来表示,每个插件文件都存在唯一的校验值。插件文件是存储在服务端的文件服务器中的,客户端可通过插件配置数据中的插件下载路径在服务端的文件服务器中获取插件配置数据对应的插件文件。注册表标识可唯一识别一个注册表,不同注册表对应的标识是不一样的。需要说明的是,各个插件文件对应的插件配置数据都是预先设置好的,各个插件配置数据的表现形式可以根据具体需要而设置,本实施例对不再对其他插件配置数据进行阐述。

在本实施例中,不限制操作系统标识的表现形式,通过操作系统标识可以唯一确定客户端的操作系统,通过客户端浏览器版本可以确定客户端浏览器对应的插件类型。当客户端侦测到访问请求后,客户端获取访问请求对应的URL,并将访问请求对应的URL记为第一URL,可以理解的是,该URL是访问请求所需要访问的网站的URL。

步骤S13,获取所述插件配置数据对应的插件文件,确定所述插件配置数据中与所述插件文件对应的第二URL。

步骤S15,若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件。

当客户端获取到插件配置数据后,客户端获取插件配置数据对应的插件文件,并获取插件配置数据中与插件文件对应的URL,并将从插件配置数据中确定的URL记为第二URL,检测第一URL是否与第二URL相同。需要说明的是,每一插件配置数据中都会存在一个URL,该URL是该插件配置数据对应插件文件所需要安装的网站的URL。若客户端检测到第一URL和第二URL相同,客户端则确定第一URL和第二URL匹配成功;若客户端检测到第一URL和第二URL不相同,客户端则确定第一URL和第二URL匹配失败。可以理解的是,当第一URL和第二URL相同时,表明插件配置数据对应插件是需要安装在该网站中的插件。若客户端确定第一URL和第二URL匹配成功,客户端则根据插件配置数据确定是否安装插件配置数据对应的插件文件,其中,每一插件文件都存在对应的插件配置数据。需要说明的是,为了便于插件的管理和安装,本实施例中将插件文件封装成可执行程序安装包,即将插件文件封装成插件安装包。进一步地,若客户端确定第一URL和第二URL不相同,客户端则确定当前不需要安装插件文件,可以直接在该网站中执行访问请求,打开该访问请求对应的网页。

进一步地,步骤S15包括:

步骤a,若所述第一URL与所述第二URL匹配成功,则获取所述客户端的第一操作系统、第一内核和所述客户端中已安装插件的安装数据。

进一步地,若客户端确定第一URL与插件配置数据中的第二URL匹配成功,客户端则获取其操作系统类型和内核类型,并将其操作系统类型记为第一操作系统,以及将其内核类型记为第一内核,获取该网站中已安装插件的安装数据,其中,安装数据包括但不限于插件版本号和插件文件,在本实施例中,插件文件可用插件文件的校验值来表示,此时,安装数据包括但不限于插件版本号和校验值。可以理解的是,如果两个插件文件对应的校验值不相同,则表明这两个插件文件的内容是不相同的;如果两个插件文件对应的校验值相同,则表明这两个插件文件的内容是相同的。

步骤b,将所述第一操作系统、所述第一内核、所述安装数据分别与所述插件配置数据进行对比,得到对比结果。

步骤d,根据所述对比结果确定是否安装所述插件配置数据对应的插件文件。

当客户端得到第一操作系统、第一内核和安装数据后,客户端将第一操作系统、第一内核、安装数据分别与插件配置数据进行对比,得到对比结果。在本实施例中,存在两种对比结果,一种是第一操作系统、第一内核、安装数据与插件配置数据中对应的数据满对比成功,得到对比成功的对比结果,对应的结果标识为成功标识,另一种是第一操作系统、第一内核、安装数据与插件配置数据中对应的数据对比失败,得到比对失败的对比结果,对应的结果标识为失败标识。在本实施例中,不限制成功标识和失败标识的表现形式。当客户端得到对比结果后,客户端根据对比结果确定是否安装插件配置数据对应的插件文件。具体地,当对比结果为对比成功时,客户端确定在网站对应的浏览器中安装插件配置数据对应的插件文件;当对比结果为对比失败时,客户端确定不在网站对应浏览器中安装插件配置数据对应的插件文件。

进一步地,步骤b包括:

步骤b1,将所述第一操作系统与所述插件配置数据中的第二操作系统进行对比,以及将所述第一内核与所述插件配置数据中的第二内核进行对比。

步骤b3,若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,且所述安装数据满足所述插件配置数据中安装机制对应的安装条件,则得到对比成功的对比结果。

具体地,客户端获取插件配置数据中的操作系统和内核,并将从插件配置数据中获取的操作系统记为第二操作系统,将第一操作系统与第二操作系统进行对比,以及将第一内核和第二内核进行对比。若第一操作系统和第二操作系统为同一种操作系统,客户端则确定第一操作系统和第二操作系统一致,若第一操作系统和第二操作系统不是同一种操作系统,客户端则确定第一操作系统和第二操作系统不一致。若第一内核和第二内核是同一种内核,如都为Trident内核,客户端则确定第一内核和第二内核一致;若第一内核和第二内核不是同一种内核,客户端则确定第一内核和第二内核不一致。

当客户端确定第一操作系统和第二操作系统一致,且第一内核和第二内核一致时,客户端判断安装数据是否满足案件策略配置数据中安装机制对应的安装条件。若客户端确定安装数据满足安装机制对应的安装条件,客户端则得到对比成功的比对结果;若客户端确定安装数据未满足安装机制对应的安装条件,客户端则会得到比对失败的比对结果。进一步地,若客户端确定第一操作系统与第二操作系统不一致,和/或第一内核与第二内核不一致,此时,不管安装数据是否满足安装机制对应的安装条件,客户端都会得到比对失败的比对结果。可以理解的是,若将A操作系统的插件文件安装在B操作系统对应的浏览器中,或者将A内核的插件文件安装在B内核对应的浏览器中,都会导致该浏览器无法正常打开网页。

进一步地,步骤b1包括:

步骤b11,若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,则确定所述客户端中的已安装插件文件的插件类型。

步骤b13,根据所述插件类型确定所述插件配置数据中安装机制对应的安装条件。

步骤b15,若所述安装数据满足所述安装条件,则得到对比成功的对比结果。

进一步地,若客户端确定第一操作系统与插件配置数据中的第二操作系统一致,第一内核与插件配置数据中的第二内核一致,客户端则确定已安装插件文件的插件类型,即确定访问请求对应网站中已安装插件文件的插件类型,并根据插件类型确定插件配置数据中安装机制对应的安装条件。在本实施例中,当插件类型为ActiveX插件时,安装机制对应的安装条件为插件版本更新和/或插件文件更新,具体地,客户端获取已安装插件文件的第一版本号和插件文件的第一校验值,以及获取插件配置数据中的第二版本号和第二校验值。若安装条件为插件版本更新,且客户端检测到第一版本号小于第二版本号,客户端则确定安装数据满足安装条件,若客户端检测到第一版本号大于或者等于第二版本号,客户端则确定安装数据未满足安装条件;若安装条件为插件文件更新,且客户端检测到第一校验值和第二校验值不相等,客户端则确定安装数据满足安装条件,若客户端检测到第一校验值和第二校验值相等,客户端则确定安装数据未满足安装条件;若安装条件为插件版本更新和插件文件更新,且客户端检测到第一版本号小于第二版本号,以及第一校验值和第二校验值不相等,客户端则确定安装数据满足安装条件,若客户端检测到第一版本号大于或者等于第二版本号,和/或第一校验值与第二校验值相等,客户端则确定安装数据未满足安装条件。

当插件类型为NPAPI插件或者PPAPI插件时,安装机制对应的安装条件为插件版本更新。安装条件为插件版本更新的具体过程已在插件类型为ActiveX插件时详细阐述,在此不再重复赘述。当客户端确定安装数据满足安装条件后,客户端得到对比成功的对比结果;当客户端确定安装数据未满足安装条件后,客户端得到对比失败的对比结果。

步骤S17,若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

若客户端确定需要安装插件配置数据对应的插件文件,客户端则根据插件配置数据安装插件文件。具体地,客户端在根据插件配置数据安装插件文件过程中,客户端可获取插件配置数据中的更新范围,通过更新范围来安装插件文件,如当更新范围为全局更新时,客户端直接安装整个插件文件即可;当更新范围为应用更新时,客户端需要获取插件文件需要更新的应用,安装需要更新的应用对应的文件,即将需要更新的应用对应的文件替换已安装插件文件中该应用对应的文件;当更新范围为应用组更新时,客户端获取插件文件中需要更新的应用组,安装需要更新的应用组对应的文件。进一步地,客户端也可以获取插件配置数据中的安装时机,通过安装时机判断当前时间是否为插件文件的安装时间;若客户端确定当前时间为插件文件的安装时间,客户端则安装该插件文件;若客户端确定当前时间不是插件文件的安装时间,客户端继续判断当前时间是否为插件文件的安装时间。如安装时机可设置为每天的固定时间点,或者设置为在侦测到特定指令时。

当客户端成功安装插件文件后,即成功将插件配置数据对应的插件文件安装在网站对应的浏览器后,客户端通过安装插件文件的浏览器的网站打开访问请求对应的网页,以响应该访问请求。

进一步地,步骤S17包括:

步骤e,若确定安装所述插件文件,则根据所述插件配置数据确定安装所述插件文件的安装方式,并根据所述安装方式安装所述插件文件。

进一步地,若客户端确定该安装该插件文件,客户端则根据插件配置数据中的安装方式确定插件文件的安装方式,并根据所确定的安装方式安装插件配置数据对应的插件文件。其中,安装方式包括但不限于主动安装和被动安装。具体地,当客户端确定插件文件的安装方式为主动安装时,客户端直接在后台安装该插件文件,此时插件文件的安装过程对于用户是不可见的,即用户是无感知插件文件的安装过程的。

进一步地,所述根据所述安装方式安装所述插件文件的步骤包括:

步骤f,若所述安装方式为被动安装,则输出提示信息,以根据所述提示信息提示所述客户端的用户触发安装指令。

步骤g,若侦测到所述安装指令,则根据所述安装指令安装所述插件文件。

若客户端确定安装方式为被动安装,客户端则生成提示信息,并输出该提示信息,以根据该提示信息提示客户端用户触发安装指令。具体地,当客户端用户查看到该提示信息后,客户端用户可通过客户端中实体按键或者虚拟按键触发安装指令。在本实施例中,不限制客户端输出提示信息的输出方式。当客户端侦测到安装指令后,客户端根据该安装指令安装插件文件。

本实施例通过当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取访问请求对应的第一URL,若第一URL与插件配置数据中的第二URL匹配成功,且根据插件配置数据确定安装插件配置数据对应的插件文件时,则根据插件配置数据安装插件文件,实现了插件文件的自动安装,避免了由于业务系统无法自动安装插件,导致业务系统处于故障状态的情况,从而提高了客户端中业务系统的运行效率。

可以理解的是,由于本实施例实现了插件文件的自动安装,避免了用户访问业务系统对应网站时,由于没有安装对应的插件或者插件没有更新导致访问失败或者访问效率低下的情况出现,提高了客户端响应访问请求的成功率和响应效率,且用户也不需要去其他网站查找所需的插件,从而降低了用户访问业务系统对应网站时,打开对应网页所需的时间。

进一步地,提出插件的安装方法第二实施例。所述插件的安装方法第二实施例与所述插件的安装方法第一实施例的区别在于,所述插件的安装方法还包括:

步骤h,当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据。

当客户端侦测到获取插件配置数据的获取请求后,客户端通过该获取请求在服务端中获取插件配置数据。其中,在获取请求中,携带有客户端的操作系统标识和客户端浏览器版本等信息,通过获取请求携带的信息,可以在服务端中获取所需的插件策略配置信息。该获取请求可为客户端用户根据需要在客户端中触发的,也可以是客户端中预先设置好的定时任务定时触发的。

进一步地,所述步骤h包括:

步骤h2,当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端的redis缓存中获取插件配置数据,其中,在所述redis缓存中,所述插件配置数据是以JSON数组的格式存储的。

当客户端侦测到获取插件配置数据的获取请求后,客户端通过获取请求在服务端中的redis缓存中获取插件配置数据,其中,在redis缓存中,插件配置数据是以JSON(JavaScript Object Notation,Java Script对象简谱)数组的格式存储的。通过在服务端的redis缓存中获取插件配置数据,而不是在服务端的mysql数据库中查找到所需要获取的插件配置数据后,再获取插件配置数据,从而提高了客户端获取插件配置数据的获取效率。

进一步地,所述步骤h还包括:

步骤h4,当侦测到获取插件配置数据的获取请求后,获取所述获取请求对应的协议包名。

步骤h6,根据所述协议包名确定服务端对应的域名,通过所述域名和所述获取请求在所述服务端中获取插件配置数据。

进一步地,当客户端侦测到获取策略配置数据的获取请求后,客户端获取该获取请求对应的协议包名,需要说明的是,通过该协议包可以确定客户端和服务端之间的通信协议。当客户端获取到协议包名后,客户端获取协议包名中的域名,并将所获取的域名确定为服务端对应的域名,通过该域名与服务端建立连接关系。当客户端与服务端建立连接关系后,客户端将获取请求发送给服务端,以通过获取请求在服务端中获取插件配置数据。可以理解的是,域名是协议包名的一部分。

步骤i,将所述插件配置数据存储至预设的数组中,其中,在所述数组中,每一插件文件对应的插件配置数据是一个JSON对象。

当客户端获取到插件配置数据后,客户端将所获取的插件配置数据存储至预设的数组中,在本实施例中,由于插件配置数据是一个JSON对象,因此存储插件配置数据的数组为JSON数组,在该数组中,每一插件文件对应的插件配置数据是一个JSON对象,每个JSON对象都存在对应的URL。当客户端需要用插件配置数据时,客户端从该数组中获取插件配置数据。

需要说明的是,客户端在从服务端中获取到插件配置数据后,会根据插件配置数据中的插件下载路径在服务端中获取到插件配置数据对应的插件文件,并将插件配置数据对应的数组和插件文件关联存储至特定的内存目录中,以便于需要安装该插件文件时,根据该内存目标获取该插件配置数据和对应的插件文件。

在本实施例中,客户端将所获取插件配置数据以JSON对象存储至数组中,以便于在需要获取插件配置数据中,可在数组中快速获取到所需的插件配置数据,从而提高了插件配置数据的获取效率。

进一步地,所述插件的安装方法还包括:

步骤j,检测当前时间是否为所述插件配置数据对应的获取时间。

步骤m,若检测到当前时间为所述插件配置数据对应的获取时间,则触发获取所述插件配置数据的获取请求。

进一步地,客户端定时或者实时检测当前时间是否为插件配置数据对应的获取时间,在本实施例中,客户端会定时从服务端中获取插件配置数据,该定时对应的时长可根据具体需要而设置,本实施例对定时对应的时长不做具体限制。具体地,客户端记录上一次从服务端中获取插件配置数据的历史获取时间,并计算历史获取时间与当前时间之间的时间差,若该时间差等于或者大于定时对应的时长,客户端则可确定当前时间为插件配置数据对应的获取时间;若该时间差小于定时对应的时长,客户端则确定当前时间不是插件配置数据对应的获取时间。若客户端检测到当前时间为插件配置数据对应的获取时间,客户端则自动触发获取插件配置数据的获取请求;若客户端检测到当前时间不是插件配置数据对应的获取时间,客户端则继续检测当前时间是否为插件配置数据对应的获取时间。可以理解的是,在本实施例中,客户端会定时轮询服务端的接口,以获取最新的插件配置数据和插件文件。需要说明的是,客户端每从服务端中获取一次插件配置数据,客户端都可以根据新获取的插件配置数据中的插件下载路径重新获取对应的插件文件。

本实施例中的客户端定时从服务端获取插件配置数据,以根据定时获取的插件配置数据定时更新客户端浏览器中的插件,从而进一步地提高了响应访问请求的响应效率。

进一步地,提出插件的安装方法第三实施例。参照图2,所述插件的安装方法还包括:

步骤S31,当服务端接收到客户端发送的获取插件配置数据的获取请求后,根据所述获取请求将所述插件配置数据和所述插件配置数据对应的插件文件发送给客户端。

步骤S33,当所述客户端接收到所述插件配置数据和所述插件文件,且侦测到访问客户端网站的访问请求后,获取所述插件配置数据中与所述插件文件对应的第二URL,并检测所述访问请求对应的第一URL与所述第二URL是否匹配成功。

步骤S35,若所述第一URL与所述第二URL匹配成功,且根据所述插件配置数据确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

当服务端接收到客户端发送的获取插件配置数据的获取请求后,服务端根据获取请求将插件配置数据和插件配置数据对应的插件文件发送给客户端。其中,插件配置数据是由服务端用户预先设置好,存储在服务端中。当客户端接收到插件配置数据和插件文件,且侦测到访问客户端网站的访问请求后,客户端获取插件配置数据中与插件文件对应的第二URL,检测访问请求的第一URL和第二URL是否匹配成功。若客户端检测到第一URL与插件配置数据中的第二URL匹配成功,且根据插件配置数据确定需要安装对应的插件文件时,客户端根据插件配置数据安装插件配置数据对应的插件文件。需要说明的是,步骤S33和步骤S35的具体实施过程已在上述实施例中详细阐述,在此不再重复赘述。

进一步地,所述插件的安装方法还包括:

步骤n,若所述服务端根据所侦测的插件策略配置指令得到插件配置数据后,将所述插件配置数据存储到预设数据库中,以及将所述插件配置数据以JSON数组的格式存储到redis缓存中。

进一步地,服务端检测是否侦测到配置插件配置数据的插件策略配置指令,该插件策略配置指令由服务端用户根据需要而触发。当服务端侦测到配置插件配置数据的插件策略配置指令后,服务端根据插件策略配置指令得到插件配置数据,并将插件配置数据存储到预先设置好的预设数据库中,以及将插件配置数据对应的插件文件存储到对应的文件服务器中,该文件服务器是服务端中用于存储插件文件的数据库,存储插件配置数据的预设数据库可为mysql数据库,也可为其他数据库。当服务端得到插件配置数据后,服务端会将插件配置数据以JSON数组的格式存储到redis缓存中,以便于当客户端需要获取插件配置数据时,服务端从redis缓存中获取插件配置数据发送给客户端,不需要在预设数据库中获取插件配置数据发送给客户端,由于在redis缓存中获取插件配置数据的效率要比在预设数据库中获取插件配置数据要高,从而提高了服务端发送插件配置数据的发送效率,提高了客户端获取插件配置数据的获取效率。

进一步地,所述插件的安装方法还包括:

步骤o,若侦测到更改所述插件配置数据的更改指令后,根据所述更改指令更改所述插件配置数据,其中,所述更改指令至少包括以下一种指令:添加指令、修改指令、删除指令和停用指令。

进一步地,当服务端侦测到更改插件配置数据的更改指令后,服务端根据该更新指令更改插件配置数据,其中,更改指令至少包括以下一种指令:添加指令、修改指令、删除指令和停用指令。添加指令可为在插件配置数据中添加新的插件配置数据,如若插件配置数据中原来没有安装时机,服务端可根据添加指令在插件配置数据中添加安装时机。修改指令是修改服务端原有的插件配置数据,如服务端根据修改指令修改插件配置数据的更新范围和/或插件名称等。删除指令是删除插件配置数据中的数据,如服务端根据删除指令删除插件配置数据中的更新范围和/或插件序号等,当插件配置数据中没有更新范围时,表明需要全局更新插件配置数据对应的插件文件。停用指令是停止使用该插件配置数据,如当服务端在根据停止指令使插件配置数据处于停止状态时,服务端不会将处于停止状态的插件配置数据发送给客户端。进一步地,当服务端更改插件配置数据后,服务端会将更改后的插件配置数据存储至预设数据库和redis缓存中。进一步地,当服务端得到更改后的插件配置数据后,服务端也可直接将更改后的插件配置数据发送给客户端。

本实施例通过更改指令更新插件配置数据,避免了插件配置数据一成不变,从而能定时更新插件配置数据,以保证客户端能够获取到最新的插件配置数据,从而提高了客户端插件更新的更新效率。

此外,还提供一种插件的安装装置,参照图3,所述插件的安装装置包括:

获取模块10,用于当侦测到访问客户端网站的访问请求后,获取预存的插件配置数据,以及获取所述访问请求对应的第一URL,获取所述插件配置数据对应的插件文件;

确定模块30,用于确定所述插件配置数据中与所述插件文件对应的第二URL;若所述第一URL与所述第二URL匹配成功,则根据所述插件配置数据确定是否安装所述插件配置数据对应的插件文件;

安装模块50,用于若确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

进一步地,所述确定模块30包括:

第一获取单元,用于若所述第一URL与所述第二URL匹配成功,则获取所述客户端的第一操作系统、第一内核和所述客户端中已安装插件的安装数据;

对比单元,用于将所述第一操作系统、所述第一内核、所述安装数据分别与所述插件配置数据进行对比,得到对比结果;

第一确定单元,用于根据所述对比结果确定是否安装所述插件配置数据对应的插件文件。

进一步地,所述对比单元还用于将所述第一操作系统与所述插件配置数据中的第二操作系统进行对比,以及将所述第一内核与所述插件配置数据中的第二内核进行对比;若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,且所述安装数据满足所述插件配置数据中安装机制对应的安装条件,则得到对比成功的对比结果。

进一步地,所述对比单元还用于若所述第一操作系统与所述插件配置数据中的第二操作系统一致,所述第一内核与所述插件配置数据中的第二内核一致,则确定所述客户端中的已安装插件文件的插件类型;根据所述插件类型确定所述插件配置数据中安装机制对应的安装条件;若所述安装数据满足所述安装条件,则得到对比成功的对比结果。

进一步地,所述安装模块50还用于若确定安装所述插件文件,则根据所述插件配置数据确定安装所述插件文件的安装方式,并根据所述安装方式安装所述插件文件。

进一步地,所述安装模块50包括:

输出单元,用于若所述安装方式为被动安装,则输出提示信息,以根据所述提示信息提示所述客户端的用户触发安装指令;

安装单元,用于若侦测到所述安装指令,则根据所述安装指令安装所述插件文件。

进一步地,所述获取模块10还用于当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中获取插件配置数据;

所述插件的安装装置还包括:

存储模块,用于将所述插件配置数据存储至预设的数组中,其中,在所述数组中,每一插件文件对应的插件配置数据是一个JSON对象。

进一步地,所述获取模块10还用于当侦测到获取插件配置数据的获取请求后,通过所述获取请求在服务端中的redis缓存中获取插件配置数据,其中,在所述redis缓存中,所述插件配置数据是以JSON数组的格式存储的。

进一步地,所述获取模块10还包括:

第二获取单元,用于当侦测到获取插件配置数据的获取请求后,获取所述获取请求对应的协议包名;

第二确定单元,用于根据所述协议包名确定服务端对应的域名;

所述第二获取单元还用于通过所述域名和所述获取请求在所述服务端中获取插件配置数据。

进一步地,所述插件的安装装置还包括:

检测模块,用于检测当前时间是否为所述插件配置数据对应的获取时间;

触发模块,用于若检测到当前时间为所述插件配置数据对应的获取时间,则触发获取所述插件配置数据的获取请求。

依据本发明的插件的安装装置具体实施方式与上述插件的安装方法第一和第二实施例中的各步骤基本相同,在此不再赘述。

此外,还提供一种插件的安装系统,所述插件的安装系统包括客户端和服务端;

所述服务端用于当接收到客户端发送的获取插件配置数据的获取请求后,根据所述获取请求将所述插件配置数据和所述插件配置数据对应的插件文件发送给客户端;

所述客户端用于当接收到所述插件配置数据和所述插件文件,且侦测到访问客户端网站的访问请求后,获取所述插件配置数据中与所述插件文件对应的第二URL,并检测所述访问请求对应的第一URL与所述第二URL是否匹配成功;若所述第一URL与所述第二URL匹配成功,且根据所述插件配置数据确定安装所述插件文件,则根据所述插件配置数据安装所述插件文件。

进一步地,所述服务端还用于若根据所侦测的插件策略配置指令得到插件配置数据后,将所述插件配置数据存储到预设数据库中,以及将所述插件配置数据以JSON数组的格式存储到redis缓存中。

进一步地,所述服务端还用于若侦测到更改所述插件配置数据的更改指令后,根据所述更改指令更改所述插件配置数据,其中,所述更改指令至少包括以下一种指令:添加指令、修改指令、删除指令和停用指令。

依据本发明的插件的安装系统具体实施方式与上述插件的安装方法第三实施例中的各步骤基本相同,在此不再赘述。

此外,还提供一种插件的安装设备。如图4所示,图4是本发明实施例方案涉及的硬件运行环境的结构示意图。

需要说明的是,图4即可为插件的安装设备的硬件运行环境的结构示意图。依据本发明实施例插件的安装设备可以是PC,便携计算机等终端设备。

如图4所示,该插件的安装设备可以包括:处理器1001,例如CPU,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图4中示出的插件的安装设备结构并不构成对插件的安装设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及插件的安装程序。其中,操作系统是管理和控制插件的安装设备硬件和软件资源的程序,支持插件的安装程序以及其它软件或程序的运行。

在图4所示的插件的安装设备中,用户接口1003主要用于连接服务端,与服务端进行数据通信,如从服务端中获取插件配置数据;网络接口1004主要用于后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的插件的安装程序,并执行如上所述的插件的安装方法的步骤。

依据本发明的插件的安装设备的具体实施方式与上述插件的安装方法各实施例基本相同,在此不再赘述。

此外,依据本发明的实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有插件的安装程序,所述插件的安装程序被处理器执行时实现如上所述的插件的安装方法的步骤。

依据本发明的计算机可读存储介质的具体实施方式与上述插件的安装方法各实施例基本相同,在此不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

19页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:跨域的镜像生成方法、镜像安装方法、装置及电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!