一、历史背景

在2015年的支流浏览器版本中,因为能够间接调用微软开源的 ActiveX控件,能够实现微软Office软件的在线编辑及审阅性能,然而从2015年开始,各大支流浏览器先后勾销了对 NPAPI插件,导致在线编辑Office软件成为了一个难题。尽管起初有商业公司开发的相干控件,然而还是无奈 克服ActiveX控件固有的缺点,不仅限度了浏览器的版本,还须要用户独自设置浏览器平安设置,导致用户体验极差。

起初随着SAAS模式的衰亡,网页在线编辑文档也越来越风行,很多巨头公司都公布了在线Office服务,尽管这些服务在多人合作、跨平台等方面有劣势,然而存在的问题也很多,比方桌面版Office就存在一些性能缺失:须要网络随时放弃在线、不能保留桌面生成的文档、表格过大关上的时候卡死、多文档同时编辑板式不统一等,最要害的是在线Office服务很难整合到本人公司的OA、GRM、ERP中去,最好的方法还是须要在桌面Office根底上,通过技术手段让其晦涩的运行在 Chrome、Firefox、Edge、360、Opera、QQ等支流版本浏览器中。

二、现有计划

1.浏览器插件计划

此计划只实用于IE浏览器,通过在网页中 间接运行ActiveX控件调用桌面Office软件的自动化接口来实现, 收费DsoFramer及点聚WebOffice控件都是基于此原理,另外一些免费的如: 重庆软航NTKO Office文档控件、北京卓正PageOffice、广州华尔太WebOffice控件也是基于此原理。2021年初随着Chrome 对 Flash Player PPAPI插件的反对,浏览器插件的计划就彻底生效了。

2.特定浏览器计划

一些公司为了升高开发成本,又想持续应用公司原有零碎,被迫持续应用安全漏洞较多的低版本Chrome或者360等其余低版本浏览器,低版本浏览器的安全漏洞和BUG十分多,导致Office文档控件在此基础上行应用也困难重重。

3.外接程序计划

各浏览器禁用 NPAPI插件后,各个厂商纷纷应用浏览器内部协定来 启动独立的EXE外接程序,看起来问题失去了很好的解决,然而每次运行中用户端都会弹出对话框,让用户不胜其烦。用户体验极差,如果用户此时曾经关上了文档,还非常容易引起文档异样,导致文件失落等状况。

4.双核计划

通过 Chrome等浏览器上的扩大程序IETab来实现,此计划同样会有 ActiveX控件弹窗, 用户体验很差。

三、最终计划:

通过上述4个计划能够看出,如果想在支流浏览器中关上、编辑、保留微软Office文档,外围点就在于独立于浏览器之外并且能很好兼容各浏览器。这个就是明天介绍的曾经十分成熟的商业化产品—猿巨匠中间件

猿巨匠中间件的微软Office网页小程序如何解决的呢?

原理就是在网页中指定地位和大小,模仿实现一个内嵌到网页中显示的窗口,在这个窗口中再调用桌面Office软件的自动化接口实现doc、xls、ppt等文档的操作。

前端还必须可对这个窗口进行实时控制,而且窗口必须追随浏览器的挪动和缩放、网页滚动、标签页切换、敞开等操作进行主动联动。这个窗口的宿主过程同时提供Web Socket的服务端和JSON打包命令的解析执行模块,前端就能够通过Web Socket连贯后发送JSON打包的管制命令实现管制此窗口的动作。此计划能够说是上述外接程序计划的升级版,要害差别在于此计划可实现内嵌Word、Excel、PowerPoint、WPS文字、WPS表格等程序窗口到网页指定区域运行的成果,而且摈弃了通过IE内核来加载ActiveX控件的计划,解决了用户体验差、加载迟缓和内存占用高的问题。另外启动这个外接程序是通过Web Socket连贯实现的,也解决了每次启动都会弹提醒的懊恼问题,还有就是提供了相似ActiveX控件的主动降级计划,可在网页中实现静默主动降级,并额定减少了调用验证机制确保外接程序的平安启动。

另外猿巨匠中间件的微软Office网页小程序提供了丰盛的二次开发接口,对现有零碎改变比拟小的前提下, 申请启动IE控件小程序加载即可。

四、总结:

一个好的技术实施方案,首先是要满足客户的刚性需要,其次是尽量升高洽购、开发、施行及保护的总成本,再次是要有良好的兼容性和稳定性,最初需尽量确保技术计划不能因为浏览器的降级而生效。本文基于以后最新的技术信息和实践经验,给大家提供了猿巨匠中间件搭配Office网页小程序这样一个稳固牢靠、体验好、兼容性佳的桌面Office文档控件技术计划,尤其适宜在内网解决简单文档和数据量大的表格场景,以供大家技术选型参考。