• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于C/S架構(gòu)客戶端嵌入B/S架構(gòu)系統(tǒng)的設(shè)計與實現(xiàn)

      2017-09-14 06:48:24四川中電啟明星信息技術(shù)有限公司張海賓
      電子世界 2017年17期
      關(guān)鍵詞:內(nèi)核瀏覽器客戶端

      四川中電啟明星信息技術(shù)有限公司 張海賓

      基于C/S架構(gòu)客戶端嵌入B/S架構(gòu)系統(tǒng)的設(shè)計與實現(xiàn)

      四川中電啟明星信息技術(shù)有限公司 張海賓

      針對B/S架構(gòu)的Web應(yīng)用程序?qū)τ脩魝€性化的操作系統(tǒng)環(huán)境的訪問權(quán)限較低的需求,提出基于C/S架構(gòu)的客戶端嵌入瀏覽器的系統(tǒng)的設(shè)計方案。結(jié)合C/S架構(gòu)客戶端、B/S架構(gòu)Web應(yīng)用的信息交互的特點,探討客戶端系統(tǒng)的開發(fā)方法。介紹了系統(tǒng)架構(gòu)設(shè)計與客戶端設(shè)計,然后采用Java技術(shù)開發(fā)出Web服務(wù)器端軟件、C++應(yīng)用程序開發(fā)框架QT開發(fā)PC客戶端軟件?;贑/S架構(gòu)客戶端嵌入瀏覽器的系統(tǒng)已經(jīng)完成,結(jié)果表明解決問題的措施可行,系統(tǒng)為用戶提供了便利。

      C/S架構(gòu);B/S架構(gòu); QWebkit;NW.js;Electron;XP SP2

      1 引言

      C/S架構(gòu)客戶端應(yīng)用從Windows誕生以來,一直占領(lǐng)著用戶的桌面。隨著90年代末期互聯(lián)網(wǎng)的爆發(fā)使得Web應(yīng)用成為了主流,它的輕量級、易用性、用戶交互界面更友好,使得它逐漸取代了客戶端在用戶桌面的地位,目前互聯(lián)網(wǎng)公司及企業(yè)內(nèi)部建立的業(yè)務(wù)系統(tǒng)都是以Web應(yīng)用為主,它對用戶環(huán)境的要求更低,依賴性更小,它主要依賴于用戶使用的瀏覽器,瀏覽器的局限性是當需要調(diào)用用戶操作系統(tǒng)的功能時,如:獲取CPU使用情況、獲取用戶操作系統(tǒng)環(huán)境信息、用戶軟件安裝情況、訪問用戶注冊表信息等功能時,瀏覽器則無權(quán)去獲取這些信息。

      目前國內(nèi)優(yōu)秀的平臺類系統(tǒng)普遍采用客戶端模式,其客戶端應(yīng)用均采用C++語言進行開發(fā),如國內(nèi)的360(C++)、迅雷(Microsoft Visual C++開發(fā)、BLOT界面引擎)、騰訊的QQ(Microsoft Visual C++開發(fā))、國外的OICQ(C++)等軟件,其產(chǎn)品中均集成了Webkit或Chrome內(nèi)核瀏覽器的完成部分B/S架構(gòu)的重要功能,如:QQ秀、360的軟件管理,并且已經(jīng)得到了廣泛的應(yīng)用。

      表1 C/S架構(gòu)、B/S架構(gòu)優(yōu)缺點對比

      2 系統(tǒng)目標和需求分析

      本文從瀏覽器自動化入手,研究基于C/S架構(gòu)客戶端嵌入B/S架構(gòu)的業(yè)務(wù)系統(tǒng)的相關(guān)開發(fā)技術(shù),旨在提高瀏覽器在客戶端運行時提高權(quán)限;實現(xiàn)B/S架構(gòu)的業(yè)務(wù)系統(tǒng)通過C/S架構(gòu)客戶端嵌入的瀏覽器進行通信,實現(xiàn)B/S架構(gòu)業(yè)務(wù)系統(tǒng)能夠達到C/S架構(gòu)客戶端的用戶體驗效果,根據(jù)需求,對系統(tǒng)進行分析,由以下工作組成:

      (1)C/S架構(gòu)客戶端操作系統(tǒng)最低支持操作系統(tǒng)版本 XP SP2。

      (2)支持使用客戶端本地安裝的IE或客戶端內(nèi)置的Chrome內(nèi)核瀏覽器打開業(yè)務(wù)系統(tǒng)集成的系統(tǒng)。

      (3)實現(xiàn)用戶登錄狀態(tài)與原有運行IE的 用戶狀態(tài)隔離。

      (4)支持使用Chrome內(nèi)核瀏覽器加載業(yè)務(wù)系統(tǒng)。

      (5)獲取用戶本地安裝軟件信息,獲取客戶端的CPU、磁盤占用情況。

      3 系統(tǒng)的架構(gòu)設(shè)計

      圖1 統(tǒng)一工作臺系統(tǒng)架構(gòu)圖

      系統(tǒng)架構(gòu)采用C/S架構(gòu)客戶端嵌入B/S架構(gòu)的業(yè)務(wù)系統(tǒng)。業(yè)務(wù)系統(tǒng)主頁采用客戶端嵌入的Chrome內(nèi)核瀏覽器呈現(xiàn),業(yè)務(wù)系統(tǒng)通過Chrome內(nèi)核瀏覽器定義的Javascript對象進行通信,來進行信息交互。

      圖2 統(tǒng)一工作臺系統(tǒng)開發(fā)框架

      系統(tǒng)開發(fā)框架客戶端采用C++應(yīng)用程序開發(fā)框架QT進行開發(fā),多分辨率支持,支持Windows XP SP2,相較傳統(tǒng)WinForm技術(shù),界面設(shè)計更美觀,IE瀏覽器自動化采用微軟COM對象提供的接口、Chrome內(nèi)核瀏覽器采用QT開發(fā)框架的QWebkit組件。B/S服務(wù)器端業(yè)務(wù)系統(tǒng)采用Java語言的SSH框架進行開發(fā),后臺數(shù)據(jù)庫采用Oracle數(shù)據(jù)庫。

      圖3 軟件功能結(jié)構(gòu)圖

      4 系統(tǒng)核心功能的實現(xiàn)

      4.1 IE瀏覽器的創(chuàng)建與控制

      隨著互聯(lián)網(wǎng)應(yīng)用的發(fā)展,瀏覽器的市場占有率也在不斷發(fā)生變化,Chrome瀏覽器后來居上,市場占有率不斷增加,但是IE有著悠久的歷史,眾多企業(yè)內(nèi)部系統(tǒng)都以支持IE為標準建成,還有很多插件僅支持特定版本的IE,限于以上需求在此采用IE COM對象使用用戶本地IE瀏覽器訪問業(yè)務(wù)系統(tǒng)?!癐nternetExplorer.Application”是微軟為開發(fā)者提供的InternetExplorer對象,可以通過它來自動化控制Windows Internet Explorer的實例,該對象提供了以下接口:

      通過調(diào)用以上接口,實現(xiàn)對IE的自動化控制,完成IE的自動跳轉(zhuǎn)、自動打開新窗口、自動填寫表單等系統(tǒng)需要的功能。

      4.2 Chrome內(nèi)核瀏覽器的集成

      B/S系統(tǒng)的前端頁面為單頁面應(yīng)用程序,采用HTML5開發(fā),交互性較強,鑒于IE低版本對HTML5支持較差,所以采用Chrome內(nèi)核瀏覽器。Chrome瀏覽器最早是Google基于開源項目WebKit的分支Blink進行的繼續(xù)開發(fā)的,QWebkit是QT封裝的Webkit內(nèi)核瀏覽器組件,為調(diào)用者提供了豐富的調(diào)用接口。

      對于目前比較成熟客戶端內(nèi)嵌瀏覽器的開發(fā)框架NW.js、Electron都是基于Chrome內(nèi)核的瀏覽器進行開發(fā),但它們都存在不支持Windows XP操作系統(tǒng),基于本項目的需求,故未采用以上開發(fā)框架進行開發(fā)。

      本項目采用的是QWebkit組件,進行的開發(fā),同時對該組件一些不完善的接口進行在封裝和完善,使其對HTML5的支持更好。

      4.3 C/S客戶端與B/S業(yè)務(wù)系統(tǒng)通信

      C/S客戶端與B/S業(yè)務(wù)系統(tǒng)需要進行信息交互,如客戶端版本信息、客戶電腦配置信息、客戶端運行資源占用情況、客戶機軟件安裝情況、調(diào)用客戶機器安裝軟件等等,均需要C/S客戶端與B/S業(yè)務(wù)系統(tǒng)進行信息交互。信息交互的實現(xiàn)方式采用客戶端定義 Javascript全局對象,B/S架構(gòu)業(yè)務(wù)系統(tǒng)通過調(diào)用該對象定義的方法,向客戶端傳遞消息??蛻舳丝梢酝ㄟ^直接調(diào)用B/S業(yè)務(wù)系統(tǒng)的Javascript方法向業(yè)務(wù)系統(tǒng)傳遞消息,業(yè)務(wù)系統(tǒng)收到消息后執(zhí)行相應(yīng)處理。

      C/S發(fā)送消息到B/S,消息內(nèi)容如下:

      (1)發(fā)送客戶機本地軟件安裝列表;

      (2)發(fā)送客戶端當前版本信息;

      (3)發(fā)送登錄用戶信息;

      (4)發(fā)送用戶退出信息;

      (5)發(fā)送客戶機安裝的操作系統(tǒng)信息、客戶端資源占用信息CPU、磁盤等。

      B/S發(fā)送消息到C/S,消息內(nèi)容如下:

      (1)發(fā)送打開某個本機已安裝軟件信息;

      (2)發(fā)送設(shè)置客戶端開機自啟動信息;

      (3)發(fā)送使用IE打開業(yè)務(wù)系統(tǒng)信息;

      (4)發(fā)送使用Chrome打開業(yè)務(wù)系統(tǒng)信息;

      (5)發(fā)送使用IE跳轉(zhuǎn)到指定URL信息。

      5 結(jié)論

      針對B/S架構(gòu)的Web應(yīng)用程序?qū)τ脩魝€性化的操作系統(tǒng)環(huán)境的訪問權(quán)限較低的需求,結(jié)合IE自動化、Chrome內(nèi)核瀏覽器封裝技術(shù),本文設(shè)計并實現(xiàn)基于C/S架構(gòu)客戶端嵌入B/S架構(gòu)系統(tǒng)。系統(tǒng)采用C++應(yīng)用程序開發(fā)框架QT開發(fā)C/S架構(gòu)客戶端,Java開發(fā)B/S架構(gòu)業(yè)務(wù)系統(tǒng),使用操作系統(tǒng)IE COM對象實現(xiàn)IE自動化,使用Chrome內(nèi)核瀏覽器展現(xiàn)業(yè)務(wù)系統(tǒng)并實現(xiàn)C/S與B/S通信。系統(tǒng)上線后測試后發(fā)現(xiàn)整個系統(tǒng)運行流暢,在實際應(yīng)用過程中可以有效地提高B/S業(yè)務(wù)系統(tǒng)的用戶體驗,功能滿足用戶提出的開發(fā)需求。

      [1]https://msdn.microsoft.com/zh-cn/library/aa752084(v=vs.85).aspx.

      [2]http://www.awesomium.com/support.

      猜你喜歡
      內(nèi)核瀏覽器客戶端
      萬物皆可IP的時代,我們當夯實的IP內(nèi)核是什么?
      強化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      反瀏覽器指紋追蹤
      電子制作(2019年10期)2019-06-17 11:45:14
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計
      Linux內(nèi)核mmap保護機制研究
      縣級臺在突發(fā)事件報道中如何應(yīng)用手機客戶端
      傳媒評論(2018年4期)2018-06-27 08:20:24
      孵化垂直頻道:新聞客戶端新策略
      傳媒評論(2018年4期)2018-06-27 08:20:16
      基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
      電子測試(2018年10期)2018-06-26 05:53:34
      環(huán)球瀏覽器
      再見,那些年我們嘲笑過的IE瀏覽器
      西丰县| 年辖:市辖区| 当涂县| 彰化县| 夏河县| 郎溪县| 宝应县| 裕民县| 包头市| 广德县| 宜章县| 东方市| 当雄县| 成都市| 吴川市| 井陉县| 礼泉县| 临安市| 庆云县| 灯塔市| 舟山市| 宁安市| 天等县| 东阿县| 泰顺县| 同江市| 含山县| 扎兰屯市| 墨脱县| 迭部县| 潮安县| 班戈县| 武威市| 张北县| 乐至县| 读书| 玛沁县| 囊谦县| 巴中市| 佛教| 新蔡县|