1. 程式人生 > >一個實現瀏覽器網頁與本地程式之間進行雙向呼叫的輕量級、強相容、可擴充套件的外掛開發平臺—本網通

一個實現瀏覽器網頁與本地程式之間進行雙向呼叫的輕量級、強相容、可擴充套件的外掛開發平臺—本網通

       通過本網通外掛平臺可實現在網頁中的JavaScript指令碼無障礙訪問本地電腦的硬體、呼叫本地系統的API及相關元件,同時可徹底解決ActiveX元件在Chrome、FireFox、Opera、Edge、Safari等瀏覽器各版本的相容使用問題。

系統相容性: 1、全面相容Windows XP、Vista、7、8、10等各版本桌面系統; 2、全面相容Windows Server 2003、2008、2012、2016等各版本伺服器系統; 3、Linux、Mac、安卓等系統理論上也是可行的,歡迎熟悉這些平臺夥伴的積極參與。

瀏覽器相容性: 1、IE 8及以上版本; 2、Chrome 16及以上版本; 3、FireFox 11及以上版本; 4、Safari 7及以上版本; 5、Opera 12.1及以上版本; 6、Edge 12及以上版本。

       在IE中實現網頁和本地系統雙向呼叫的方法是使用ActiveX控制元件技術,而在Chrome、FireFox等瀏覽器有類似的NPAPI外掛技術。因為安全隱患及穩定性等問題,微軟新生代瀏覽器Edge不再支援ActiveX控制元件,目前主流的Chrome瀏覽器也從42版開始NPAPI外掛被拋棄,導致原來很多依賴這些技術實現的業務無法在新版瀏覽器中繼續使用。

目前瀏覽器網頁與本地程式之間雙向呼叫的知名解決方案有以下兩個: 1、firebreath,核心實現採用的是ActiveX控制元件和NPAPI外掛技術,已面臨新版瀏覽器不能全面相容使用的問題; 2、Node.js,是一個基於Chrome V8引擎的 JavaScript 執行環境,其中FFI模組可實現在JavaScript中呼叫本地C語言風格的動態連結庫。執行及部署依賴Python和npm,另外需要區別處理32位和64位的程式呼叫,尤其是不能支援ActiveX控制元件等面向物件的元件呼叫。

使用本網通的理由: 1、輕量級:本網通整個程式包很小,不依賴其它第三方程式即可使用; 2、強相容性:本網通採用HTML5標準中的Web Socket技術,可確保在各個瀏覽器版本的相容使用; 3、本網通在Windows平臺採用COM元件技術為上層外掛開發提供友好的整合支援,支援大多數的開發語言; 4、可配置和靈活的程式分發支援,方便基於本網通的第三方整合到自己的業務系統中。

使用場景舉例: 1、網頁中需要和本地電腦的硬體進行互動,比如B/S架構的OA系統中操作本地印表機; 2、網頁中需要呼叫本地程式的ActiveX控制元件實現一些特殊服務,比如Office文件的線上預覽和編輯; 3、一些軟體系統使用了第三方的DLL模組,可通過本網通實現在B/S架構中的系統中呼叫; 4、網銀、線上支付等安全性要求高的網站,可基於本網通開發訪問U盾等的加密模組提供訪問安全性; 5、開發去中心化的分散式系統應用,如充分利用分散的系統計算能力。