亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        瀏覽器客戶端功能擴展實現(xiàn)方法研究

        2020-10-20 08:54:03蘇祖輝
        名城繪 2020年6期
        關(guān)鍵詞:服務(wù)程序插件調(diào)用

        摘要:本文主要針目前編寫支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)過于復(fù)雜,而提出的一種支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)方法,針對現(xiàn)在缺陷,本文將給出一種通用的支持所有瀏覽器的客戶端功能擴展組件的技術(shù)框架,不依賴于瀏覽器本身的插件技術(shù),同時也可以無限擴展組件的功能,有效低降低Internet上發(fā)布跨瀏覽器插件的成本。

        關(guān)鍵詞:瀏覽器擴展;WEB應(yīng)用

        引言

        在管理信息系統(tǒng)開發(fā)中,B/S(Browser/Server)結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)的模式越來越流行。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進的結(jié)構(gòu)。B/S結(jié)構(gòu)的優(yōu)點:具有分布性特點,可以隨時隨地進行查詢、瀏覽等業(yè)務(wù)處理,業(yè)務(wù)擴展簡單方便,通過增加網(wǎng)頁即可增加服務(wù)器功能,維護簡單方便,只需要改變網(wǎng)頁,即可實現(xiàn)所有用戶的同步更新,開發(fā)簡單,共享性強。

        但B/S 模式也有一些缺點:各瀏覽器標(biāo)準不一樣,安全性高,網(wǎng)頁在瀏覽器設(shè)置的“沙箱”內(nèi)運行,功能有限制,難以實現(xiàn)傳統(tǒng)模式下的特殊功能要求。

        1 技術(shù)現(xiàn)狀

        目前主要的瀏覽器主要有:微軟公司傳統(tǒng)IE瀏覽器和WIN10新發(fā)布的EDGE新型瀏覽器、網(wǎng)景公司FireFox和Google Chrome瀏覽器,各瀏覽器實現(xiàn)的插件技術(shù)不一樣,微軟公司IE瀏覽器使用的是COM技術(shù),也稱ActiveX控件技術(shù),用于實現(xiàn)IE瀏覽器功能的擴展,加上數(shù)字簽名技術(shù),在不修改IE安全級別的前提下,可實現(xiàn)功能的擴展,但WIN10新發(fā)布的EDGE瀏覽器已經(jīng)不支持微軟自己的ActiveX控件技術(shù),網(wǎng)景公司FireFox以網(wǎng)景插件應(yīng)用程序編程接口(NPAPI)技術(shù)實現(xiàn)控件擴展, Google Chrome 42以前的版本也支持NPAPI技術(shù),但Chrome新版本已經(jīng)不再支持NPAPI技術(shù),轉(zhuǎn)為使用PPAPI技術(shù)。

        由于瀏覽器作為軟件界面框架廣泛應(yīng)用,給用戶帶來方便,同時也帶來了麻煩,發(fā)布支持所有瀏覽器的客戶端擴展功能組件時需要考慮各類瀏覽器使用的技術(shù),需求重復(fù)開發(fā)插件功能。發(fā)布應(yīng)用成本相對較高,效率也低,對經(jīng)常需要修改或擴展功能的客戶端程序維護相對復(fù)雜,而且瀏覽器的升級換代也會造成客戶端組件被迫升級。

        2 解決思路

        針對目前編寫支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)過于復(fù)雜,本文提出一種支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)方法。實現(xiàn)一個通用的支持所有瀏覽器的客戶端功能擴展組件的技術(shù)框架,使用所有瀏覽器都必須支持的HTTP技術(shù)來統(tǒng)一實現(xiàn)客戶端功能擴展,不依賴于瀏覽器本身的插件技術(shù),同時也可以無限擴展組件的功能,有效低降低Internet上發(fā)布跨瀏覽器插件的成本。

        提供的支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)方法,是基瀏覽器的HTTP協(xié)議實現(xiàn)的,瀏覽器本身是一個支持HTTP協(xié)議調(diào)用的客戶端,可以發(fā)出標(biāo)準的HTTP請求,并將請求的返回的HTML顯示在頁面上。

        主要思路是在本地操作系統(tǒng)中實現(xiàn)一個輕量級的HTTP服務(wù)程序框架,瀏覽器通過HTTP協(xié)議與這個HTTP服務(wù)程序交互,通過這個客戶端封裝的Javascript Api, 瀏覽器可以實現(xiàn)與本地HTTP服務(wù)程序交互,并可以調(diào)用HTTP服務(wù)程序中的擴展功能模塊,實現(xiàn)支持所有瀏覽器的客戶端功能擴展的方法。

        3 技術(shù)實現(xiàn)

        在客戶端開發(fā)一個HTTP服務(wù)程序軟件,該軟件以操作系統(tǒng)服務(wù)形式安裝 ,如WINDOW操作系統(tǒng)下為window Services并運行在session0/system用戶權(quán)限中,在LINUX操作系統(tǒng)下為etc/init.d。

        安裝到客戶端的本地輕量的HTTP服務(wù)軟件,可以采用操作系統(tǒng)服務(wù)的方式安裝,自啟動的方式,這個軟件各種開發(fā)語言都很容易實現(xiàn),技術(shù)上有可行性,開發(fā)難度也不大,主要的設(shè)計要包括:插件式的框架,可加載外部的模塊,實現(xiàn)功能的擴展,將功能的接口統(tǒng)一標(biāo)準化,輸入與輸出采用與頁面一樣的JSON或XML標(biāo)準,可判斷本地插件模塊的版并下載更新。

        提供瀏覽器與本地HTTP服務(wù)程序交互的API,瀏覽器通過標(biāo)準的HTTP訪問技術(shù)與HTTP服務(wù)器交互,因本地HTTP服務(wù)與WEB應(yīng)用本身的遠程服務(wù)器不可能在同一個網(wǎng)絡(luò)域,可以通過所有瀏覽器都支持的標(biāo)準script標(biāo)簽解決HTTP跨域訪問的問題,JS的API庫的封裝,瀏覽器頁面是采用JS與本擴展功能交互的,因為跨域問題,無法直接采用AJAX的異步方式調(diào)用,但可以采用標(biāo)準script標(biāo)簽來發(fā)出HTTP請求,可將訪問的方式用JS封裝,提供頁面調(diào)用的API。一般包括以下幾個接口:

        a) Init: 初始化服務(wù)DLL,主要實現(xiàn)注冊服務(wù)接口的初始化,

        b) Exec: 調(diào)用當(dāng)前服務(wù)DLL下的功能函數(shù),如以下形式:

        1. Exec(String funName,StringBuffer inParams) return StringBuffer;

        2. 輸入?yún)?shù)區(qū):inParams 將調(diào)用該功能的所有參數(shù)傳入,參數(shù)區(qū)實現(xiàn)也是采用JSON串如:{param1:val1,param2:val2,……}

        c) Exit: 卸載服務(wù)

        d) Call: 該服務(wù)是一個代理服務(wù),內(nèi)部調(diào)用Init/Exec/Exit獨立完成一次功能調(diào)用,參數(shù)與Exec相同

        具體功能的插件,建議以DLL的模塊方式,可動態(tài)加載,并靈活擴展,當(dāng)然也可以根據(jù)HTTP服務(wù)軟件的技術(shù)體制,設(shè)計插件的具體形式,本地機器上的擴展功能通過開發(fā)功能DLL(動態(tài)連接庫模塊),可將DLL放入WEB應(yīng)用遠程服務(wù)器,本地的HTTP服務(wù)器在調(diào)用時將該DLL下載到本地進行調(diào)用,如果本地版本與服務(wù)器版本不一致,將重新更新本地的服務(wù)DLL.

        當(dāng)用戶使用頁面交互功能時,程序頁面通過提供的API方法CallExtension(‘模塊名稱,函數(shù)名稱),該方法按功能模塊的DLL名稱來調(diào)用具體該模塊中的功能函數(shù)。

        本地HTTP服務(wù)程序加載服務(wù)DLL,然后根據(jù)功能名稱查找到服務(wù)DLL中的功能函數(shù),并將服務(wù)DLL中的功能函數(shù)接口模式進行了統(tǒng)一的規(guī)范,所有的功能函數(shù)都使用簡單的IPO(輸入緩存區(qū)-處理-輸出緩存區(qū))定義,將輸入?yún)?shù)設(shè)置入輸入緩存區(qū),進行統(tǒng)一的調(diào)用處理后,將結(jié)果輸出到輸出緩存區(qū)。

        4 結(jié)束語

        本文提供支持所有瀏覽器的客戶端功能擴展組件的實現(xiàn)方法,在不修改代理框架的情況下,可以無限擴展組件的功能,有效代替目前Internet上發(fā)布跨瀏覽器插件。實現(xiàn)一種本地HTTP WEB服務(wù)器的技術(shù),將瀏覽器控件以提供的功能轉(zhuǎn)化為服務(wù),并將服務(wù)功能獨立與瀏覽器本身,使用DLL(動態(tài)連接庫)技術(shù)實現(xiàn)擴展的具體功能實現(xiàn)。國為使用HTTP協(xié)議交互,所以支持所有當(dāng)前的瀏覽器技術(shù),可以無限擴展組件的功能,有效代替目前Internet上發(fā)布跨瀏覽器插件。

        (作者單位:南京萊斯信息技術(shù)股份有限公司)

        作者簡介:蘇祖輝(1978- ) ,男 ,本科,技術(shù)專家,工程師 ,主要研究方向為計算機系統(tǒng)架構(gòu)應(yīng)用。

        猜你喜歡
        服務(wù)程序插件調(diào)用
        基于移動終端的人事信息員工自助服務(wù)系統(tǒng)設(shè)計
        基于C#的進程守護程序的設(shè)計
        視聽(2020年3期)2020-06-11 14:28:18
        自編插件完善App Inventor與樂高機器人通信
        電子制作(2019年22期)2020-01-14 03:16:34
        核電項目物項調(diào)用管理的應(yīng)用研究
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        MapWindowGIS插件機制及應(yīng)用
        水利工程施工監(jiān)理服務(wù)程序及質(zhì)量控制
        基于Revit MEP的插件制作探討
        利用RFC技術(shù)實現(xiàn)SAP系統(tǒng)接口通信
        国内视频偷拍一区,二区,三区| 欧美一区二区三区视频在线观看| 无码少妇a片一区二区三区| 久久精品无码一区二区三区不| 女同国产日韩精品在线| 亚洲国产精品高清在线| 亚洲国产日韩精品一区二区三区 | 黑人一区二区三区啪啪网站| 国产视频一区二区在线免费观看 | 免费观看又污又黄的网站| 狠狠狠狠狠综合视频| 亚洲精品中文字幕一二| 无码国产精品一区二区av| 久久精品无码中文字幕| 最新亚洲无码网站| 精品一区二区三区亚洲综合| 玩弄白嫩少妇xxxxx性| 国产白嫩美女在线观看| 免费人人av看| 亚洲美女自拍偷拍视频| 又爽又黄又无遮挡的视频| 色丁香在线观看| 给我播放的视频在线观看| 国产精品久久久免费精品| 99精品国产在热久久| 动漫在线无码一区| 久久开心婷婷综合中文| 免费无遮挡无码永久视频| 国产成人av一区二区三区在线| 中文人妻av大区中文不卡| 亚洲av一区二区三区蜜桃| 国产揄拍国产精品| 女的把腿张开男的猛戳出浆| 日本高清不卡二区三区| 国产乱人偷精品人妻a片| 日本55丰满熟妇厨房伦| 国产美女久久久亚洲综合| 久久伊人最新网址视频| 无码人妻精品一区二区三区下载| 亚洲欧美成人中文在线网站| 日韩少妇人妻精品中文字幕|