B/S模式下的客户机数据交互系统及方法与流程

文档序号:11594531阅读:1069来源:国知局
:本发明涉及B/S结构技术领域,尤其涉及B/S模式下的客户机数据交互系统及方法。

背景技术:
:随着网络技术的发展,许多应用系统由传统的C/S架构转向于B/S架构,由于B/S架构是通过客户机的浏览器进行系统操作,限制了对客户机本地资源的访问,目前的解决办法有基于Activex和JavaApplet两种技术,但是这两种技术存在以下缺陷:1、跨浏览器问题Activex技术是由微软主导的一种浏览器插件技术,属于微软体系,不能很好的兼容除IE以外的其它浏览器,另外存在安全上的诸多问题,导致该插件技术应用受到很大的限制。目前在采用该技术的B/S架构系统中,限定用户只能用指定版本的IE浏览器,如果是在所开发的ActiveX插件没有得到指定机构授权的情况下,需要限定用户降低浏览器安全设置才能使用。由于所采用ActiveX技术所带的浏览器限制问题,导致采用了该技术的B/S架构系统同样也限制了浏览器的使用,而随着客户机系统的多样化发展,尤其是如FireFox等非IE浏览器使用的增多,B/S系统急需要兼容除IE以外的其它主流浏览器,使客户机在浏览器上面有更多的选择,选择自己喜欢的浏览器登录B/S系统,不必在不同浏览器之间来回切换,解除因浏览器不同而无法使用B/S系统的问题。2、安全性问题B/S系统控制客户机本地资源一直都受限于安全问题的影响,大部分功能不能像桌面应用程序那样得以实现,B/S系统通过中间服务软件间接控制客户机本地资源,一方面将业务实现放在了桌面应用程序上,以原来的桌面应用程序开发没有任何区别,另一方面B/S系统不能直接控制客户机,多了一道安全屏障,使得一般开发人员也可以开发出安全性能非常高的应用系统。3、性能问题JavaApplet技术开发语言单一,只能用java进行开发,在用户第一次使用时需要下载庞大的java虚拟机并安装,在网速的影响下,这个过程变得非常慢长。无论是ActiveX还是javaApplet技术,在执行都是由浏览器以插件的方式来执行所有的业务程序,在执行性能上不高,如果能将业务程序放在客户机本地以最高效的本地计算机语言来执行业务程序,其性能会大大提高,能够让B/S系统接近C/S架构系统的执行效率。

技术实现要素:
:本发明的目的就是针对现有技术存在的不足而提供一种B/S模式下的客户机数据交互系统,能够实现B/S模式下跨浏览器、高安全性、高性能地与客户机进行本地数据交互,同时还提供这种B/S模式下的客户机数据交互方法。为了实现上述目的,本发明采用的技术方案是:B/S模式下的客户机数据交互系统,包括有客户机端和浏览器端,浏览器端提供JavaScript、由JavaScript控制的FlashSocket客户端,客户机端提供socket服务端、客户机本地数据文件,浏览器端通过由JavaScript控制的FlashSocket客户端与客户机端的socket服务端进行通信,客户机端的socket服务端执行浏览器端发来的各种命令以及返回执行的结果。所述浏览器端中JavaScript的控制FlashSocket文件以及FlashSocket通用文件以预加载的方式存在客户机端作为客户机本地数据文件。本发明还提供一种B/S模式下的客户机数据交互方法,包括有客户机端和浏览器端,浏览器端提供JavaScript、由JavaScript控制的FlashSocket客户端,客户机端提供socket服务端、客户机本地数据文件,浏览器端通过由JavaScript控制的FlashSocket客户端与客户机端的socket服务端进行通信,其具体步骤如下:A、浏览器端通过JavaScript控制FlashSocket客户端向客户机端的socket服务端发送操作指令;B、客户机端的socket服务根据操作指令执行相应的操作;C、客户机端的socket服务返回执行结果到浏览器端的FlashSocket客户端。所述浏览器端中JavaScript的控制FlashSocket文件以及FlashSocket通用文件以预加载的方式存在客户机端作为客户机本地数据文件。步骤B中所述socket服务器在执行过程中,直接执行客户机本地数据文件。本发明有益效果在于:本发明包括有客户机端和浏览器端,浏览器端提供JavaScript、由JavaScript控制的FlashSocket客户端,客户机端提供socket服务端、客户机本地数据文件,浏览器端通过由JavaScript控制的FlashSocket客户端与客户机端的socket服务端进行通信,客户机端的socket服务端执行浏览器端发来的各种命令以及返回执行的结果,本发明采用了基于flash平台下的Socket技术与本地客户机端进行数据交互,在对flash的Socket技术进行再封装,能够用B/S通用的JavaScript语言进行二次开发,然后利用客户机端上的业务中间件socket服务端软件,接收来自B/S上的Socket客户端指令,执行相应的操作,Socket的服务端和客户端都在客户机端本地完成数据交互与执行,能够很好的解决跨浏览器的问题、以及安全性和性能问题。附图说明:图1是本发明的系统结构示意图。具体实施方式:下面结合附图及优选实施例对本发明作进一步说明,见图1所示,B/S模式下的客户机数据交互系统包括有客户机端和浏览器端,浏览器端提供JavaScript、由JavaScript控制的FlashSocket客户端,客户机端提供socket服务端、客户机本地数据文件,浏览器端通过由JavaScript控制的FlashSocket客户端与客户机端的socket服务端进行通信,客户机端的socket服务端执行浏览器端发来的各种命令以及返回执行的结果。根据不同客户机系统,采用本地计算机语言开发的业务中间件socket服务端软件,负责业务处理以及接收并执行来自浏览器端的socket客户端的消息。浏览器端中JavaScript的控制FlashSocket文件以及FlashSocket通用文件以预加载的方式存在客户机端作为客户机本地数据文件。本发明还提供上述B/S模式下的客户机数据交互方法,包括有客户机端和浏览器端,浏览器端提供JavaScript、由JavaScript控制的FlashSocket客户端,客户机端提供socket服务端、客户机本地数据文件,浏览器端通过由JavaScript控制的FlashSocket客户端与客户机端的socket服务端进行通信,其具体步骤如下:A、浏览器端通过JavaScript控制FlashSocket客户端向客户机端的socket服务端发送操作指令;B、客户机端的socket服务根据操作指令执行相应的操作,socket服务器在执行过程中,可以直接执行客户机本地数据文件;C、客户机端的socket服务返回执行结果到浏览器端的FlashSocket客户端。在浏览器端,JavaScript的控制FlashSocket文件以及FlashSocket通用文件以预加载的方式存在客户机端作为客户机本地数据文件,在以后的执行过程中,在没有更新版本的情况下,可以自己执行客户机本地数据文件,不必从服务器上加载。业务中间件socket服务端开启本地Socket服务,只接收来自本地的Socket客户端合法的执行命令,业务中间件socket服务端可以同桌面应用程序一样,控制客户机端本地的所有资源。1、跨浏览器问题由于本发明技术是基于Flash平台下的Socket技术,Flash本身具有兼容多种浏览器的特点,甚至是许多版本比较老的浏览器都能够很好的支持Flash技术,基于Flash平台开发的应用能够很好的解决跨浏览器的问题。2、安全性问题Flash平台自身有安全沙箱的安全控制机制,对于Socket服务来说可只接收指定客户端的消息,其次Socket的服务端和客户端都在客户机本地执行,减少了来自网络的安全隐患,Socket服务端软件由业务应用系统根据需要开发,没有额外的控制权限,减少了越权操作的可能性。3、性能问题根据Socket的结构,相对于javaApplet来说,不需要安装庞大的java虚拟机,Socket服务端可以充分利用客户机本地系统特性,采用不同的语言开发,可以将本地系统的性能发挥得非常好,能够大大提高系统的性能。本发明采用了基于flash平台下的Socket技术与本地客户机端进行数据交互,在对flash的Socket技术进行再封装,能够用B/S通用的JavaScript语言进行二次开发,然后利用客户机端上的业务中间件socket服务端软件,接收来自B/S上的Socket客户端指令,执行相应的操作,Socket的服务端和客户端都在客户机端本地完成数据交互与执行,能够很好的解决跨浏览器的问题、以及安全性和性能问题。当然,以上所述仅是本发明的较佳实施例,故凡依本发明专利申请范围所述的构造、特征及原理所做的等效变化或修饰,均包括于本发明专利申请范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1