一种插件式桌面客户端系统及其访问方法与流程

文档序号:25212429发布日期:2021-05-28 14:08阅读:75来源:国知局
一种插件式桌面客户端系统及其访问方法与流程

本发明涉及一种桌面客户端系统,具体涉及一种插件式桌面客户端系统及其访问方法。



背景技术:

客户端/服务器模式,简称c/s模式,作为一种经典的计算机软件协同工作方式,在客户端应用场景中得到了广泛应用。其中,客户端软件常以单体应用方式存在,其中包含软件预置的所有功能。这导致每次功能变更或扩展均需要重新升级整个程序或程序的主体部分,不但对软件开发方的系统迭代带来更多的集成和测试工作量,同时也因更新内容较多使得耗时较长,而影响用户体验和工作效率。



技术实现要素:

本发明所要解决的技术问题是传统客户端软件以单体应用方式存在,不易集成和移植,目的在于提供一种插件式桌面客户端系统及其访问方法,将所有功能性或模块性插件集成在一个统一的客户端插件底座中,实现单点登录、自动升级、集中授权和集成访问等功能。

本发明通过下述技术方案实现:

一种插件式桌面客户端系统,包括通过api接口通信连接的客户端和服务器端,所述客户端包括客户端插件底座和应用插件模块,其中,所述应用插件模块包括若干应用插件,所述若干应用插件通过通信接口集成于所述客户端插件底座上;

所述应用插件用于实现系统的不同功能;

所述客户端插件底座用于对所述应用插件进行集中授权和应用插件对服务器端的集成访问。

进一步地,所述客户端还包括登录模块和自动增量升级模块,所述登录模块和自动增量升级模块集成于所述客户端插件底座上,所述登录模块用于登录桌面客户端系统;

所述自动增量升级模块用于对桌面客户端系统进行增量升级。

进一步地,所述通信接口为套接字或命名管道,一般情况下,在快速局域网(lan)环境中,传输控制协议或tcp/ip协议的套接字客户端和命名管道客户端在性能方面不相上下,但是,网络速度越慢(如在广域网(wan)或拨号网络上),套接字的效果较佳,而当网络速度不成问题时命名管道则是更好的选择,因为其功能更强、易于使用且提供多种配置选项。

现有的客户端常以单体应用的形式存在,其中包含软件预置的所有功能,导致每次功能变更或扩展均需要重新升级整个程序或程序的主体部分,不但对软件开发方的系统迭代带来更多的集成和测试工作量,同时也因更新内容较多使得耗时较长,而影响用户体验和工作效率。本发明通过将客户端的单体应用拆分为各种应用插件,将所有功能性或模块性插件集成统一在一个客户端插件底座中,实现单点登录、自动升级、集中授权、集成访问等功能,在客户端插件底座中集成了用户登录功能,用户通过客户端插件底座集成的登录模块登录客户端后,登录信息(用户名和密码)和授权状态(cookie或token)在桌面客户端系统系统程序的本次运行过程中,始终保存于客户端插件底座中,在整个桌面客户端系统程序的运行过程中,点开插件应用即可直接使用,无需再次登录,即一次登录,全程使用,实现了单点登录的功能。在用户成功登录桌面客户端系统后,客户端插件底座将自动向服务器端确认桌面客户端系统是否需要更新,并按需自动完成整个桌面客户端系统的增量升级,实现通过增量方式自动更新整个桌面客户端系统;在用户成功登录并且桌面客户端系统完成增量升级,即将进入系统时,客户端插件底座自动按照服务器后端预设的用户访问权限,显示各种应用插件的可见性,以及可见应用插件中的可用功能,无访问权限的应用和功能,将对用户不可见,或操作时会提示无访问权限。经过上述过程后,插件应用无需再次开发用户登录和系统升级功能,直接使用客户端插件底座中的;而授权控制时由客户端插件底座统一提供授权,实现数据的获取和分配,应用插件直接使用即可。这样的功能复用设置,既可降低研发工作量,也能保障应用系统中权限的统一控制和访问。并且在客户端插件底座中集成了统一的后台数据访问功能。每个插件应用无需建立自己的数据访问通道,直接将要访问的内部数据地址(站内地址)提供给客户端插件底座,客户端插件底座在预设的配置文件中查找对应的服务器端域名和端口信息,将对应的服务器端域名和端口信息进行拼接,再按api调用规则进行访问并返回数据即可。这样,通过将数据访问接口进行集中和归一,即可降低研发工作量,也便于在客户端对用户的数据访问权限进行控制、监测和分析,规避越权访问。

提出一种插件式桌面客户端系统访问方法,应用于上述桌面客户端系统中,包括以下步骤:

步骤s1、客户端插件底座通过通信接口接收应用插件需要访问的站内地址信息和参数信息;

步骤s2、客户端插件底座根据接收到的站内地址信息和参数信息,在预设的配置文件中查找对应的服务器端域名和端口信息,将对应的服务器端域名和端口信息进行拼接,得到完整的api接口地址;

步骤s3、客户端插件底座通过api接口地址和参数信息调用对应的api接口,并通过api接口向服务器端发送请求;

步骤s4、客户端插件底座接收服务器端对请求的处理结果;

步骤s5、若步骤s4中的处理结果为执行成功则客户端插件底座无变化地将处理结果透传给发出请求的应用插件;所述应用插件根据接收到的处理结果进行处理;

步骤s6、若步骤s4中的处理结果为登录状态异常,则客户端插件底座自动执行重新登录并更新保存登录状态信息,并执行步骤s2;登录状态异常包括未登录或登录超时;

步骤s7、客户端插件底座接收应用插件信息,若接收到新的请求则执行步骤s1-s6,若需要退出登录,则关闭并释放所有打开的应用插件。

进一步地,步骤s2中拼接过程为:将查找到的对应的服务器端域名作为所述api接口地址的前半部分;将查找到的对应的服务器端口信息作为所述api接口地址的后半部分。两部分地址的分离和拼接,解决了固定式地址在研发和部署中的麻烦。将系统的部署位置(前半部分的域名)和系统内功能组织结构(后半部分的功能)分开,有两大好处:一方面,在研发时仅需考虑后半部分,将域名设置为本机地址即可顺利研发,而无需考虑最终在哪里部署;而在部署时,仅需将前半部分写入程序的配置文件中,便可实现程序的任意位置部署,而无需像固定地址一样需要重新打包包含新部署位置的应用程序。并且,更新安装位置或做新安装时,仅需调整配置文件中的域名即可,简单方便快速。

进一步地,步骤s3中通过api接口向服务器端发送请求时支持并发访问,客户端插件底座可同时执行多个访问请求,提高系统工作效率。

进一步地,在应用插件发出访问请求之前,先通过登录模块登录客户端,客户端插件底座自动保存登录信息和登录授权状态。

进一步地,在登录进客户端后,客户端插件底座自动完成桌面客户端系统的增量升级。

进一步地,在完成桌面客户端系统的增量升级后,客户端插件底座自动按照桌面客户端系统预设的用户访问权限,对应用插件进行集中授权。

本发明与现有技术相比,具有如下的优点和有益效果:

1、本发明一种插件式桌面客户端系统及其访问方法,将所有功能性或模块性插件集成于一个客户端插件底座中,在客户端插件底座中进行集中授权和集成访问,实现单点登录、自动升级、集中授权和集成访问等功能,用户登录一次即可使用权限范围内的所有应用插件,无权限应用和功能不可见,方便快捷,安全可控;客户端系统更新时,仅更新少量插件,快速高效的开发,降低集成和测试工作量,节约成本;集中授权和集成访问成为公共功能模块,移植时无需再次开发,可降低研发工作量,加快交付速度和质量;提高开发效率。

2、本发明一种插件式桌面客户端系统及其访问方法,提供按配置拼接api地址功能,应用插件不保存服务器域名(或ip)和端口,在新应用部署、服务器迁移或地址变更后仅需更新独立配置文件中服务器地址即可,无需所有插件应用进行更新。客户端插件底座支持集成访问,为唯一的外部数据入口,可方便地进行接口服务质量监测和执行各种测试验证。

附图说明

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:

图1为本发明整体结构框图;

图2为本发明插件式桌面客户端系统运行流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。

在以下描述中,为了提供对本发明的透彻理解阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本发明。在其他实例中,为了避免混淆本发明,未具体描述公知的结构、电路、材料或方法。

在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本发明至少一个实施例中。因此,在整个说明书的各个地方出现的短语“一个实施例”、“实施例”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和、或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。此外,本领域普通技术人员应当理解,在此提供的示图都是为了说明的目的,并且示图不一定是按比例绘制的。这里使用的术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。

在本发明的描述中,需要理解的是,术语“前”、“后”、“左”、“右”、“上”、“下”、“竖直”、“水平”、“高”、“低”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。

实施例1

本发明中提到的客户端为相当于安装在pc端上的应用程序,其特别的地方在于,它可以集成很多其他的应用程序(一般为某一板块的子程序,整体结构类似于微信中集成小程序),并提供统一的用户登录认证和访问权限控制功能,用户登录后仅可看到所有对其授过权的子系统,以及子系统内的已授权访问内容,实现一套类似于网站中功能集成和权限控制的应用程序。

如图1所示,一种插件式桌面客户端系统,包括通过api接口通信连接的客户端和服务器端,所述客户端包括客户端插件底座和应用插件模块,其中,所述应用插件模块包括若干应用插件,所述若干应用插件通过通信接口集成于所述客户端插件底座上;

所述应用插件用于实现系统的不同功能;

所述客户端插件底座用于对所述应用插件进行集中授权和应用插件对服务器端的集成访问。

客户端还包括登录模块和自动增量升级模块,所述登录模块和自动增量升级模块集成于所述客户端插件底座上,所述登录模块用于登录桌面客户端系统;自动增量升级模块用于对桌面客户端系统进行增量升级。

在具体的实施方式中,上述通信接口为套接字或命名管道,根据不同的网络情况选择不同的通信接口,一般情况下,在快速局域网(lan)环境中,传输控制协议或tcp/ip协议的套接字客户端和命名管道客户端在性能方面不相上下,但是,网络速度越慢(如在广域网(wan)或拨号网络上),套接字的效果较佳,而当网络速度不成问题时命名管道则是更好的选择,因为其功能更强、易于使用且提供多种配置选项。

现有的客户端常以单体应用的形式存在,其中包含软件预置的所有功能,导致每次功能变更或扩展均需要重新升级整个程序或程序的主体部分,不但对软件开发方的系统迭代带来更多的集成和测试工作量,同时也因更新内容较多使得耗时较长,而影响用户体验和工作效率。本发明通过将客户端的单体应用拆分为各种应用插件,将所有功能性或模块性插件集成统一在一个客户端插件底座中,实现单点登录、自动升级、集中授权、集成访问等功能,在客户端插件底座中集成了用户登录功能,用户通过客户端插件底座集成的登录模块登录客户端后,登录信息(用户名和密码)和授权状态(cookie或token)在桌面客户端系统系统程序的本次运行过程中,始终保存于客户端插件底座中,在整个桌面客户端系统程序的运行过程中,点开插件应用即可直接使用,无需再次登录,即一次登录,全程使用,实现了单点登录的功能。在用户成功登录桌面客户端系统后,客户端插件底座将自动向服务器端确认桌面客户端系统是否需要更新,并按需自动完成整个桌面客户端系统的增量升级,实现通过增量方式自动更新整个桌面客户端系统;在用户成功登录并且桌面客户端系统完成增量升级,即将进入系统时,客户端插件底座自动按照服务器后端预设的用户访问权限,显示各种应用插件的可见性,以及可见应用插件中的可用功能,无访问权限的应用和功能,将对用户不可见,或操作时会提示无访问权限。经过上述过程后,插件应用无需再次开发用户登录和系统升级功能,直接使用客户端插件底座中的;而授权控制时由客户端插件底座统一提供授权,实现数据的获取和分配,应用插件直接使用即可。这样的功能复用设置,既可降低研发工作量,也能保障应用系统中权限的统一控制和访问。并且在客户端插件底座中集成了统一的后台数据访问功能。每个插件应用无需建立自己的数据访问通道,直接将要访问的内部数据地址(站内地址)提供给客户端插件底座,客户端插件底座在预设的配置文件中查找对应的服务器端域名和端口信息,将对应的服务器端域名和端口信息进行拼接,再按api调用规则进行访问并返回数据即可。这样,通过将数据访问接口进行集中和归一,即可降低研发工作量,也便于在客户端对用户的数据访问权限进行控制、监测和分析,规避越权访问。

本发明中提到的客户端为相当于安装在pc端上的应用程序,其特别的地方在于,它可以集成很多其他的应用程序(一般为某一板块的子程序,整体结构类似于微信中集成小程序),并提供统一的用户登录认证和访问权限控制功能,用户登录后仅可看到所有对其授过权的子系统,以及子系统内的已授权访问内容,实现一套类似于网站中功能集成和权限控制的应用程序。

实施例2

如图2所示,本实施例提供一种插件式桌面客户端系统访问方法,应用于上述桌面客户端系统中,包括以下步骤:

步骤s1、客户端插件底座通过通信接口接收应用插件需要访问的站内地址信息和参数信息;

步骤s2、客户端插件底座根据接收到的站内地址信息和参数信息,在预设的配置文件中查找对应的服务器端域名和端口信息,将对应的服务器端域名和端口信息进行拼接,得到完整的api接口地址;

步骤s3、客户端插件底座通过api接口地址和参数信息调用对应的api接口,并通过api接口向服务器端发送请求;api接口向服务器端发送请求时支持并发访问,这样客户端插件底座可同时执行多个访问请求,提高系统工作效率;

步骤s4、客户端插件底座接收服务器端对请求的处理结果;

步骤s5、若步骤s4中的处理结果为执行成功则客户端插件底座无变化地将处理结果透传给发出请求的应用插件;所述应用插件根据接收到的处理结果进行处理;

步骤s6、步骤s6、若步骤s4中的处理结果为登录状态异常,则客户端插件底座自动执行重新登录并更新保存登录状态信息,并执行步骤s2;登录状态异常包括未登录或登录超时;

步骤s7、客户端插件底座接收应用插件信息,若接收到新的请求则执行步骤s1-s6,若需要退出登录,则关闭并释放所有打开的应用插件。

在具体的实施方式中,步骤s2中拼接过程为:将查找到的对应的服务器端域名作为所述api接口地址的前半部分;将查找到的对应的服务器端口信息作为所述api接口地址的后半部分。两部分地址的分离和拼接,解决了固定式地址在研发和部署中的麻烦。将系统的部署位置(前半部分的域名)和系统内功能组织结构(后半部分的功能)分开,有两大好处:一方面,在研发时仅需考虑后半部分,将域名设置为本机地址即可顺利研发,而无需考虑最终在哪里部署;而在部署时,仅需将前半部分写入程序的配置文件中,便可实现程序的任意位置部署,而无需像固定地址一样需要重新打包包含新部署位置的应用程序。并且,更新安装位置或做新安装时,仅需调整配置文件中的域名即可,简单方便快速。

在具体的实施方式中,在应用插件发出访问请求之前,先通过登录模块登录客户端,客户端插件底座自动保存登录信息和登录授权状态。在登录进客户端后,客户端插件底座自动完成桌面客户端系统的增量升级。在完成桌面客户端系统的增量升级后,客户端插件底座自动按照桌面客户端系统预设的用户访问权限,对应用插件进行集中授权。

可以理解的是,将所有功能性或模块性插件集成于一个客户端插件底座中,在客户端插件底座中进行集中授权和集成访问,实现单点登录、自动升级、集中授权和集成访问等功能,用户登录一次即可使用权限范围内的所有应用插件,无权限应用和功能不可见,方便快捷,安全可控;客户端系统更新时,仅更新少量插件,快速高效的开发,降低集成和测试工作量,节约成本;集中授权和集成访问成为公共功能模块,移植时无需再次开发,可降低研发工作量,加快交付速度和质量;提高开发效率。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1