首页> 中国专利> Web页面和图形用户界面客户端双向通信的方法及系统

Web页面和图形用户界面客户端双向通信的方法及系统

摘要

本发明涉及一种Web页面和图形用户界面客户端双向通信的方法,包括:启动GUI客户端,将启动监听端口的参数传递给GUI客户端;启动端口监听服务;前端插件发送消息尝试连接GUI客户端,直至返回连接成功的响应消息;前端插件连接上GUI客户端后,向浏览器回调与登录相关的页面脚本,并通过浏览器获取用户的登录信息,向GUI客户端发送登录消息;GUI客户端根据登录消息执行登录,并向前端插件返回登录响应;Web页面和GUI客户端之间通过前端插件、并借助监听端口进行双向通信。本发明还涉及一种Web页面和图形用户界面客户端双向通信系统。本发明启动GUI客户端的端口监听服务后,以前端插件技术为中介,实现了Web页面和GUI客户端之间的双向通信。兼容性、通用性较佳。

著录项

  • 公开/公告号CN103139276A

    专利类型发明专利

  • 公开/公告日2013-06-05

    原文格式PDF

  • 申请/专利权人 金蝶软件(中国)有限公司;

    申请/专利号CN201110398637.7

  • 发明设计人 毛芊;

    申请日2011-12-05

  • 分类号H04L29/08;H04L29/06;

  • 代理机构广州华进联合专利商标代理有限公司;

  • 代理人何平

  • 地址 518057 广东省深圳市南山区深南大道市高新技术工业村W1-B4

  • 入库时间 2024-02-19 19:33:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-03

    授权

    授权

  • 2013-07-10

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20111205

    实质审查的生效

  • 2013-06-05

    公开

    公开

说明书

【技术领域】

本发明涉及数字信息的传输,特别是涉及一种Web页面和图形用户界面客 户端双向通信的方法,还涉及一种Web页面和图形用户界面客户端双向通信系 统。

【背景技术】

Client/Server结构(C/S结构)是大家熟知的客户机和服务器结构。它是软件 系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到 Client端和Server端来实现,降低了系统的通讯开销。

B/S结构(Browser/Server,浏览器/服务器模式),是Web兴起后的一种网 络结构模式,Web浏览器是客户端最主要的应用软件。这种模式统一了客户端, 将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

在需要将C/S结构和B/S结构集成的系统中,通常采用浏览器自定义协议 或者applet技术来实现二者集成。然而,浏览器自定义协议只能单向通信,功 能受限;applet技术受安全性、运行环境等因素的影响,稳定性不高,实现B/S 模式及C/S模式无缝集成的难度较高。

【发明内容】

基于此,有必要提供一种兼容性、通用性较佳的Web页面和图形用户界面 客户端双向通信的方法。

一种Web页面和图形用户界面客户端双向通信的方法,包括下列步骤:启 动GUI客户端,将启动监听端口的参数传递给所述GUI客户端;启动端口监听 服务;前端插件发送消息尝试连接所述GUI客户端,直至所述GUI客户端返回 连接成功的响应消息;前端插件连接上所述GUI客户端后,向浏览器回调与登 录相关的页面脚本,并通过所述浏览器获取用户的登录信息,然后向所述GUI 客户端发送登录消息;所述GUI客户端根据所述登录消息执行登录,并向前端 插件返回登录响应;浏览器的Web页面和所述GUI客户端之间通过前端插件、 并借助GUI客户端的监听端口进行双向通信。

优选的,所述启动GUI客户端之前包括下列步骤:通过所述浏览器获取对 GUI客户端的启动操作;所述浏览器通过自定义协议向启动器程序发送运行指 令,所述运行指令携带有启动监听端口的参数;所述启动GUI客户端中是由所 述启动器程序启动GUI客户端。

优选的,所述浏览器的Web页面和所述GUI客户端之间通过前端插件、并 借助GUI客户端的监听端口进行双向通信的步骤是:前端插件获取用户在浏览 器的Web页面上的操作;前端插件向浏览器的Web页面回调与操作相关的页面 脚本,并向GUI客户端发送操作消息;GUI客户端根据所述操作消息执行操作, 并向前端插件返回执行结果;前端插件根据执行结果向浏览器的Web页面回调 页面脚本。

优选的,所述用户在浏览器的Web页面上的操作为业务调用。

优选的,所述端口为socket端口。

优选的,所述前端插件为Flex。

还有必要提供一种Web页面和图形用户界面客户端双向通信系统。

一种Web页面和图形用户界面客户端双向通信系统,包括:启动器,用于 启动GUI客户端,同时将启动监听端口的参数传递给GUI客户端;GUI客户端, 包括监听模块,用于根据所述参数启动端口监听服务;前端插件模块,包括连 接模块,用于发送消息尝试连接GUI客户端;所述GUI客户端包括连接响应模 块,用于向前端插件模块返回是否连接成功的响应消息;所述前端插件模块包 括登录模块,用于向浏览器回调与登录相关的页面脚本,并根据所述浏览器获 取的用户的登录信息,向所述GUI客户端发送登录消息;所述GUI客户端包括 登录执行模块,用于根据所述登录消息执行登录,并向所述登录模块返回登录 响应;所述前端插件模块包括通信模块,用于借助GUI客户端的监听端口实现 双向通信。

优选的,包括浏览器,所述浏览器包括:获取模块,用于获取对GUI客户 端的启动操作;协议模块,用于通过自定义协议向所述启动器发送运行指令, 所述运行指令携带有启动监听端口的参数。

优选的,所述通信模块用于获取用户在浏览器的Web页面上的操作,然后 向浏览器的Web页面回调与操作相关的页面脚本,并向所述GUI客户端发送操 作消息;还用于接收所述GUI客户端返回的执行结果,并根据执行结果向浏览 器的Web页面回调页面脚本;所述GUI客户端包括操作执行模块,用于根据所 述操作消息执行操作,并向通信模块返回所述执行结果。

优选的,所述端口为socket端口,所述前端插件为Flex。

上述Web页面和图形用户界面客户端双向通信的方法,通过启动GUI客户 端的端口监听服务后,以前端插件技术为中介,实现了Web页面和图形用户界 面客户端之间的双向通信。由于前端插件技术兼容各种浏览器,因此兼容性、 通用性较佳。

【附图说明】

图1是一实施例中Web页面和图形用户界面客户端双向通信的方法的流程 图;

图2是另一实施例中Web页面和图形用户界面客户端双向通信的方法的流 程图;

图3是一实施例中Web页面和图形用户界面客户端双向通信的方法的时序 图;

图4是一实施例中Web页面和图形用户界面客户端双向通信系统的结构示 意图;

图5是另一实施例中Web页面和图形用户界面客户端双向通信系统的结构 示意图;

图6是一实施例中浏览器进行进度显示的示意图。

【具体实施方式】

为使本发明的目的、特征和优点能够更为明显易懂,下面结合附图对本发 明的具体实施方式做详细的说明。

图1是一实施例中Web页面和图形用户界面客户端双向通信的方法的流程 图,包括下列步骤:

S110,启动GUI(Graphical User Interface,图形用户界面)客户端,将启动 监听端口的参数传递给GUI客户端。在本实施例中,该监听端口是socket端口。

S120,启动端口监听服务。GUI客户端启动后,启动端口监听服务。在本 实施例中,监听端口是socket端口。

S130,前端插件发送消息尝试连接GUI客户端,直至GUI客户端返回连接 成功的响应消息。在本实施例中,前端插件循环发送消息,直到收到连接成功 的响应消息。

在本实施例中,即使用户关闭GUI客户端,GUI客户端也会常驻在进程中, 并且保持监听端口的启动状态。这样在下一次启动GUI客户端时,就会直接在 S130步骤中收到连接成功的响应消息,省略了S110和S120的步骤。

S140,前端插件连接上GUI客户端后,向浏览器回调用于登录的页面脚本, 并通过浏览器获取用户的登录信息,然后向GUI客户端发送登录消息。在本实 施例中,该页面脚本是JS(Javascript)脚本(或称JS方法)。

S150,GUI客户端根据登录消息执行登录,并向前端插件返回登录响应。

S160,浏览器的Web页面和GUI客户端之间通过前端插件,并借助GUI 客户端的监听端口进行双向通信。

实际上,步骤S130中成功连接客户端后,就已经可以实现Web页面和GUI 客户端之间的双向通信。只是需要用户登录后,才能使用客户端的相应功能。 因此,在优选的实施例中,步骤S140和S150就构成一个双向通信的过程:(1) 用户通过浏览器输入登录信息,前端插件获取登录信息后向GUI客户端发送登 录消息。此为Web页面——GUI客户端的通信过程。(2)GUI客户端根据登 录消息执行登录,并根据登录的执行阶段向前端插件返回登录响应,前端插件 根据登录响应向浏览器回调JS脚本,通过浏览器进行进度显示,以便用户能及 时了解执行状态。此为GUI客户端——Web页面的通信过程。图6是一实施例 中浏览器进行进度显示的示意图。步骤S150执行登录的过程中,浏览器会依序 显示系统处于“客户端登录中”和“正在打开客户端主界面”两进度。

上述Web页面和图形用户界面客户端双向通信的方法,通过启动GUI客户 端的端口监听服务后,以前端插件技术为中介,实现了Web页面和图形用户界 面客户端之间的双向通信。由于前端插件技术兼容各种浏览器,因此兼容性、 通用性较佳。

在本实施例中,前端插件采用Flex,在其他实施例中也可以是Java Applet 或者对象类别扩充组件(Object Linking and Embedding Control eXtension,OCX) 等前端插件。

图2是另一实施例中Web页面和图形用户界面客户端双向通信的方法的流 程图,其与图1所示实施例的区别包括:

在启动GUI客户端,将启动监听端口的参数传递给GUI客户端的步骤之前, 还包括步骤S202和S204。

S202,通过浏览器获取对GUI客户端的启动操作。获取用户在浏览器的 Web页面上进行的启动GUI客户端的操作。

S204,浏览器通过自定义协议向启动器程序发送运行指令,指令携带有启 动监听端口的参数。

该自定义协议各浏览器均可以识别,因此也可以保证兼容性和通用性。启 动器程序为一个.exe程序。由于现有技术难以通过自定义协议直接启动socket 服务,因此编译一个启动器程序,先通过一个自定义协议运行该启动器程序, 启动器程序通过注册表查找客户端路径,再于步骤S210中通过启动器程序启动 GUI客户端,同时携带启动监听端口的参数,以启动监听端口。

在图2所示实施例中,浏览器的Web页面和所述GUI客户端之间通过前端 插件进行双向通信具体包括下列步骤:

S262,前端插件获取用户在浏览器的Web页面上的操作。

S264,前端插件向浏览器的Web页面回调与操作相关的页面脚本,并向GUI 客户端发送操作消息。在本实施例中,页面脚本为JS脚本。

S266,GUI客户端根据操作消息执行操作,并向前端插件返回执行结果。

S268,前端插件根据执行结果向浏览器的Web页面回调页面脚本。在本实 施例中,页面脚本为JS脚本。

在本实施例中,前端插件采用Flex,在其他实施例中也可以是Java Applet 或者对象类别扩充组件(Object Linking and Embedding Control eXtension,OCX) 等前端插件。

在本实施例中,将Web页面和图形用户界面客户端双向通信的方法应用于 企业应用套件之中,该操作为业务调用,包括打开GUI单据、切换业务组织等。 切换业务组织是指,用户会与业务组织相关,例如某用户隶属于A集团下的a 公司,则用户与A集团及a公司均相关。用户可以以与a公司相关的关系进行 登录,并在登录后进行业务组织的切换,例如在GUI客户端中查看GUI单据(相 当于C/S模式)时将a公司切换为A集团,即在GUI客户端中进行了业务组织 的切换。切换后向Flex返回执行结果,Flex根据执行结果向浏览器的Web页面 回调JS脚本,Web页面中用户的业务组织也就相应进行了切换(相当于B/S模 式)。

为便于理解技术方案,可一并参照图3所示的时序图。

图4是一实施例中Web页面和图形用户界面客户端双向通信系统的结构示 意图。Web页面和图形用户界面客户端双向通信系统,包括启动器10、GUI客 户端20以及前端插件模块30。

启动器10用于启动GUI客户端20,同时将启动监听端口的参数传递给GUI 客户端20。在本实施例中,该监听端口是socket端口,在其他实施例中也可以 采用其他监听端口。

GUI客户端20包括监听模块22,监听模块22根据启动监听端口的参数启 动端口监听服务。

前端插件模块30包括连接模块34,用于发送消息尝试连接GUI客户端20。 在本实施例中,连接模块34循环发送消息,直到收到连接响应模块24返回的 表示连接成功的响应消息。

连接响应模块24属于GUI客户端,用于向前端插件模块30返回是否连接 成功的响应消息。

登录模块36属于前端插件模块30,用于向浏览器40回调与登录相关的页 面脚本,并根据浏览器40获取的用户的登录信息,向GUI客户端20发送登录 消息。在本实施例中,该页面脚本是JS脚本。

GUI客户端20包括登录执行模块26,用于根据登录消息执行登录,并向登 录模块36返回登录响应。

通信模块38属于前端插件模块30,用于借助GUI客户端20的监听端口实 现双向通信。

图5是另一实施例中Web页面和图形用户界面客户端双向通信系统的结构 示意图。其与图4所示实施例的主要区别包括:

浏览器40具体包括获取模块42和协议模块44。获取模块42用于获取用户 对GUI客户端20的启动操作。协议模块44用于通过自定义协议向启动器发送 运行指令,运行指令携带有启动监听端口(本实施例中为socket端口)的参数。 该自定义协议各浏览器均可以识别。

通信模块38用于获取用户在浏览器40的Web页面上的操作,然后向浏览 器40的Web页面回调与操作相关的页面脚本,并向GUI客户端20发送操作消 息;还用于接收GUI客户端20返回的执行结果,并根据执行结果向浏览器40 的Web页面回调页面脚本。在本实施例中,回调的页面脚本均是JS脚本。

GUI客户端还包括操作执行模块28,用于根据操作消息执行操作,并向通 信模块38返回执行结果。

在本实施例中,前端插件模块30的前端插件采用Flex,在其他实施例中也 可以是Java Applet或者对象类别扩充组件(Object Linking and Embedding Control  eXtension,OCX)等前端插件。

在本实施例中,将Web页面和图形用户界面客户端双向通信系统应用于企 业应用套件之中,操作为业务调用,包括打开GUI单据、切换业务组织等。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细, 但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域 的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和 改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附 权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号