一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种信创系统中自动执行更新NPAPI插件的方法与流程

2022-08-13 02:22:31 来源:中国专利 TAG:

一种信创系统中自动执行更新npapi插件的方法
1.技术领域:本发明涉及一种信创系统中自动执行更新npapi插件的方法,一种信创系统中自动执行更新npapi插件的方法

背景技术:
目前在信创平台下业务系统厂商需要在网页中集成基于npapi技术的流式或版式文档插件,用于解决客户在办公过程中对流式/版式文档的在线阅读、编辑、保存等操作。由于信创平台是基于linux系统改造而来,桌面办公的便利性还远远不如windows操作系统,同时信创平台的种类繁多,一旦将npapi插件安装到信创系统后,后期该插件需要更新甚至多次更新时,需要专业运维人员进行逐台多次人工安装,这对于业务系统厂商来说,仅npapi插件的维护成本将变得费时费力。
2.针对现有的问题,我们通过升级服务组件启动升级程序来与升级服务器进行交互,升级程序检测到升级服务器中版本高于本地插件版本时,升级程序通过判断不同信创平台,自动将对应的升级包下载到本地客户端中,升级程序会卸载客户端之前的插件然后安装下载的升级包,完成插件的升级操作。该方法在插件升级过程中,仅需进行一次输入密码人工操作。这对于业务系统厂商来说,不仅部署简单方便,而且极大的减少了后期维护运营成本。
3.现有技术方案主要缺点有:1、该升级方法只适用于火狐浏览器下,基于chrome内核的360安全浏览器、红莲花浏览器以及奇安信浏览器因为权限问题无法执行sudo命令从而导致插件无法正常卸载更新;2、该升级方案目前只能支持单一的信创平台,如果用户有多个信创平台将无法更新插件;总结:当前的技术方案在信创平台中无法很好的实现npapi插件自动更新,无法提高项目在实施过程中的效率低下问题。
4.本发明主要是解决信创平台下npapi插件在所有支持npapi插件的浏览器下能自动更新,提高项目工作效率和便利性:1、支持基于chrome内核的浏览器自动更新插件2、支持各种信创平台,客户无需判断插件升级包对应的信创平台:由于在真实的客户环境中信创平台一般有2-3种甚至更多,而对应的插件升级包也各不相同,在不具备专业知识的情况下,客户无法判断每个升级包对应的是哪个信创平台,造成插件升级更新困难;3、提升项目升级效率,升级实施人员无需人工逐台电脑进行更新升级包:在有新的升级包需要在客户端进行更新时,升级服务组件会自动启动升级程序将升级包下载到客户端本地,然后执行升级操作,无需人工干预,升级效率具有极大的提升;4、部署简单方便:只需将对应插件升级包集中部署到指定的升级服务器上,客户端npapi插件就可以根据升级服务器的版本信息完成升级操作。


技术实现要素:

5.本发明克服现有技术的不足,提供了一种信创系统中自动执行更新npapi插件的方法。
6.一种信创系统中自动执行更新npapi插件的方法,其特征在于:所述方法包括以下步骤:s1:业务系统通过浏览器加载jquery引入ajax技术,并通过ajax发送post请求;s2:ajax调用升级服务组件的updatecontrol接口,并且传递升级服务器url地址等参数;s3:升级组件服务程序接收到升级请求之后,启动升级程序,并通过共享内存的方式将js程序传过来的参数传给升级程序;s4:升级程序启动后通过共享内存的技术获取到升级服务器url地址,通过http协议发送请求到升级服务器获取升级配置文件update.ini文件,该文件包含了本次升级的插件版本号,以及每个信创平台的标志信息以及升级包放置路径;s5:升级程序获取到服务器中的版本v1,然后获取当前信创电脑中所安装的插件版本号v2与v1来进行对比,根据比较结果做对应的操作;s6:当v2大于等于v1时,升级程序不做任何升级动作直接退出;s7:当v2小于v1时,升级程序会去获取信创平台的标志(操作系统 芯片组合)f1,与从升级服务器中下载的配置文件update.ini中获取的信创品台标志f2循环对比,f1与f2相等时获取插件升级包的下载路径,通过http协议发送请求到升级服务器下载升级包;s8:升级包下载之后,升级程序弹出输入sudo密码的窗口让用户输入密码,本发明中的升级程序将会卸载当前信创电脑中的插件,然后安装下载的升级包进行更新;s9:安装完成之后,升级程序会再次获取当前信创电脑中插件的版本号v3,与v2进行比较,当v3等于v2时说明插件更新失败,升级程序提示更新失败,升级程序退出,更新操作将在浏览器下次加载插件时进行,当v3大于v2时说明插件更新成功,本发明中的升级程序提示更新成功,本发明中的程序退出。
7.其中,所述浏览器加载jquery来提供ajax服务,所述本地升级服务组包括升级服务组件与升级程序,所述升级服务组件运行时就是以root权限运行,通过升级服务组件来启动升级程序就可以获取sudo权限,升级程序可以执行sudo命令来卸载安装插件,所述升级服务组件把浏览器与升级程序网络通讯以及ipc进程间通讯连接在一起,升级服务组件解析浏览器发送过来的ajax的post请求得到业务系统传递的升级服务器地址参数,启动升级程序并通过共享内存的方式把升级服务器地址传递给升级程序;其中,所述业务系统通过浏览器加载jquery引入ajax模块,业务系统将升级服务器地址等参数组成json格式数据,业务系统通过ajax发送post请求,调用升级服务组件的updatecontrol接口传递json数据,升级服务组件解析http请求命令,启动升级程序并传递升级服务器url地址给升级程序。
8.其中,升级程序被升级服务组件启动之后,通过共享内存技术取得升级服务器url地址,发送http请求到升级服务器,下载升级配置文件update.ini,解析update.ini文件获取升级版本号,与获取到的本地安装的插件版本号比较,如需升级,本发明中的升级程序获取信创电脑的操作系统 cpu的标志去与配置文件中的flag循环对比,获取到插件升级包的
下载地址,本发明中的升级程序再次发送http请求到升级服务器下载升级安装包来进行插件更新操作。
9.其中,所述升级程序与升级服务器通讯,卸载升级服务器中的配置文件update.ini获取升级版本号以及下载升级包;所述升级程序获取本地安装的插件版本号,并与从升级服务器获取到的版本号比较;所述升级程序卸载当前电脑中安装的旧版本插件以及安装从升级服务器下载的升级安装包。升级服务器可以部署在业务系统的服务器中也可以单独部署到一个服务器中,包含了update.ini配置文件以及各种信创平台下的升级安装包,update.ini配置文件中的配置项包含了本次升级的插件版本号、升级包个数以及每个信创平台的标志和该标志下插件升级包的存放路径,供升级程序比较插件版本和下载升级安装包,所述信创平台的标志包括操作系统和cpu信息。
10.本发明有益效果在于1、适用操作系统平台更多:相较于现有技术只支持单一的信创平台之外,本发明还支持各种信创平台(麒麟系统、uos、中科方德等),同时,如有新的信创平台,可快速支持新的平台;2、实现方法更具有通用性:现有技术直接通过插件本身来执行更新包,但在信创系统中,基于chromium内核浏览器因有权限问题而无法执行更新包,从而导致插件更新失败;而本发明是通过本地后台服务的方式启动升级程序来更新插件,解决了sudo权限问题。
11.3、大幅提高项目实施维护效率:由于现有技术局限性,无法在所有信创平台任意支持npapi插件的浏览器下进行插件自动更新,则需专业运维人员根据不同的信创平台进行逐台电脑安装更新包;而本发明则避免了此情况的发生,插件根据更新包的情况,在各个客户端自行安装,除输入一次密码之外,全程无需专业运维人员参与,大幅提高了实施维护效率,以及出错的概率。
附图说明
12.图1是本发明的系统结构图;图2是本发明的浏览器与本地升级服务组的关系图;图3是本发明的本地升级服务组与升级服务器的关系图;图4是本发明的本发明工作流程图具体实施方式:参阅图2此图为本发明的系统结构图,包含了浏览器、本地升级服务组以及升级服务器。浏览器是业务系统的载体,加载jquery提供ajax服务。本地升级服务组是本发明中的核心组件,包含了升级服务组件与升级程序,解决了信创平台下基于chromium内核的360安全浏览器、红莲花浏览器以及其奇安信等信创浏览器无法执行sudo命令去卸载升级操作的难题,本地升级服务组是随插件安装一起安装的,在制作安装包时会通过shell脚本设置升级服务组件自动运行以及开机运行,这样升级服务组件运行时就是以root权限运行,通过升级服务组件来启动升级程序就可以获取sudo权限,升级程序可以执行sudo命令来卸载安装插件。升级服务组件是本发明系统中的中间桥梁,把浏览器与升级程序网络通讯以及ipc进程间通讯连接在一起,升级服务组件解析浏览器发送过来的ajax的post请求得到业务系统传
递的升级服务器地址参数,启动升级程序并通过共享内存的方式把升级服务器地址传递给升级程序。升级程序主要负责三个方面的工作,一是与升级服务器通讯,卸载升级服务器中的配置文件update.ini获取升级版本号以及下载升级包;二是获取本地安装的插件版本号,并与从升级服务器获取到的版本号比较;三是卸载当前电脑中安装的旧版本插件以及安装从升级服务器下载的升级安装包。升级服务器可以部署在业务系统的服务器中也可以单独部署到一个服务器中,包含了update.ini配置文件以及各种信创平台下的升级安装包,update.ini配置文件中的配置项包含了本次升级的插件版本号、升级包个数以及每个信创平台(操作系统 cpu组合)的标志和该标志下插件升级包的存放路径,供升级程序比较插件版本和下载升级安装包。
13.参阅图3此图为本发明中的浏览器与本地服务组的关系图,业务系统通过浏览器加载jquery引入ajax模块,业务系统将升级服务器地址等参数组成json格式数据,业务系统通过ajax发送post请求,调用升级服务组件的updatecontrol接口传递json数据,升级服务组件解析http请求命令,启动升级程序并传递升级服务器url地址给升级程序。
14.参阅图4此图为本发明中本地升级服务组与升级服务器的关系图,升级程序被升级服务组件启动之后,通过共享内存技术取得升级服务器url地址,发送http请求到升级服务器,下载升级配置文件update.ini,解析update.ini文件获取升级版本号,与获取到的本地安装的插件版本号比较,如需升级,本发明中的升级程序获取信创电脑的操作系统 cpu的标志去与配置文件中的flag循环对比,获取到插件升级包的下载地址,本发明中的升级程序再次发送http请求到升级服务器下载升级安装包来进行插件更新操作。
15.参阅图1s1:业务系统通过浏览器加载jquery引入ajax技术,并通过ajax发送post请求;s2:ajax调用升级服务组件的updatecontrol接口,并且传递升级服务器url地址等参数;s3:升级组件服务程序接收到升级请求之后,启动升级程序,并通过共享内存的方式将js程序传过来的参数传给升级程序;s4:升级程序启动后通过共享内存的技术获取到升级服务器url地址,通过http协议发送请求到升级服务器获取升级配置文件update.ini文件,该文件包含了本次升级的插件版本号,以及每个信创平台的标志信息以及升级包放置路径;s5:升级程序获取到服务器中的版本v1,然后获取当前信创电脑中所安装的插件版本号v2与v1来进行对比,根据比较结果做对应的操作;s6:当v2大于等于v1时,升级程序不做任何升级动作直接退出;s7:当v2小于v1时,升级程序会去获取信创平台的标志(操作系统 芯片组合)f1,与从升级服务器中下载的配置文件update.ini中获取的信创品台标志f2循环对比,f1与f2相等时获取插件升级包的下载路径,通过http协议发送请求到升级服务器下载升级包;s8:升级包下载之后,升级程序弹出输入sudo密码的窗口让用户输入密码,本发明中的升级程序将会卸载当前信创电脑中的插件,然后安装下载的升级包进行更新;s9:安装完成之后,升级程序会再次获取当前信创电脑中插件的版本号v3,与v2进
行比较,当v3等于v2时说明插件更新失败,升级程序提示更新失败,升级程序退出,更新操作将在浏览器下次加载插件时进行,当v3大于v2时说明插件更新成功,本发明中的升级程序提示更新成功,本发明中的程序退出。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献