專利名稱:一種實現服務器端瀏覽器的方法和服務器的制作方法
技術領域:
本發明涉及通訊領域,特別是涉及一種實現服務器端瀏覽器的方法和服務器。
背景技術:
在現有技術中,移動瀏覽器主要分成兩種客戶端內核瀏覽器和云端內核瀏覽器。其中,客戶端內核瀏覽器是指客戶端嵌入瀏覽器的內核,直接向網站發送請求,不通過任何代理服務器。客戶端內核瀏覽器為瀏覽器/服務器結構(BiOwser/Server,簡稱為B/S)結構,客戶端直接通過超文本傳輸協議(HyperText Transfer Protocol,簡稱為HTTP)協議向網站發起請求,并在接收到響應后先進行HTTP協議的解析,然后再進行超文本標記語言(Hypertext Markup Language,簡稱為HTML)的解析及子資源下載,生成Dom Tree并渲染,最終顯示在移動終端上。由于客戶端與網頁服務器之間交互采用HTTP協議,會導致交互數 據量大、耗流量、傳輸時間長、以及響應時間慢等問題。云端內核瀏覽器為客戶端/代理服務器(Client/Server,簡稱為C/S)架構,是客戶端向云端服務器發送請求,由云端服務器訪問網頁,在獲取頁面后在服務器端進行解析和渲染計算,然后通過某種協議將渲染的結果發送給客戶端,客戶端根據結果顯示在終端上,所有客戶端的交互操作都是在服務器的協助下完成的。具體包括兩種處理方式處理方式一在C/S架構下,客戶端向網頁發送頁面請求,在獲取子資源時向代理服務器發送請求,由代理服務器將對子資源進行一些處理。這種模式下的代理服務器僅對靜態頁面和圖像、CSS和JS等子資源進行緩存和壓縮處理,由具備完整WAP/WWW解析能力的手機客戶端完成排版和屏幕繪制。該種處理方式會導致了客戶端計算量大以及耗電量大的問題。處理方式二 在C/S架構下,客戶端向代理服務器發起請求,由代理服務器向網頁索取資源,然后在代理服務器上進行解析DOM Tree,并根據客戶端上傳的字體信息進行排版(也可以由服務器默認某字體進行排版),并對子資源進行相應的處理,包括壓縮和緩存,最終將排版好的各個控件以位置,寬高加內容的方式發送給客戶端,由客戶端根據這些信息將內容最終顯示在客戶端瀏覽器上。該種處理方式由于各種終端上的客戶端要求的字體、排版各有不同,差異性大,代理服務器處理起來繁瑣,數據處理負擔高,因此會導致客戶端渲染效果差(例如,原始頁面的效果丟失,部分動態腳本效果支持差等)、交互操作支持較差、以及安全性較低等問題。
發明內容
鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的實現服務器端瀏覽器的方法和服務器。本發明提供一種實現服務器端瀏覽器的方法,包括接收客戶端瀏覽器發送的啟動請求,在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器,并向客戶端瀏覽器發送啟動成功響應;獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器;其中,在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器具體包括在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與服務器端瀏覽器進程對應的服務器端瀏覽器頁面。本發明還提供了一種服務器,包括啟動單元,適于通過客戶端交互接口接收客戶端瀏覽器發送的啟動請求,啟動一個與客戶端瀏覽器相 對應的服務器端瀏覽器,并通過客戶端交互接口向客戶端瀏覽器發送啟動成功響應;處理單元,適于通過客戶端交互接口獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器,其中,上述啟動單元進一步適于在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與服務器端瀏覽器進程對應的服務器端瀏覽器頁面。本發明有益效果如下借助于本發明實施例的技術方案,服務器端根據客戶端瀏覽器的請求啟動相應的瀏覽器后,服務器端的瀏覽器根據客戶端瀏覽器發送的用戶操作進行相應處理,并將處理結果發送到客戶端瀏覽器,以便客戶端瀏覽器進行顯示,本發明能夠有效降低客戶端側的數據處理負擔,在響應速度快,流量消耗少的情況下,還能保證很好的渲染效果,同時支持所有的用戶操作,減輕了對用戶終端軟硬件的配置要求,給用戶提供了很好的上網環境,保證用戶的上網安全。上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的具體實施方式
。
通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中圖I是本發明一個實施例的服務器端顯示頁面和客戶端瀏覽器顯示頁面的示意圖;圖2是本發明一個實施例的實現服務器端瀏覽器的方法的流程圖;圖3是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖一;圖4是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖二 ;圖5是本發明一個實施例的判斷事件類型是瀏覽器事件還是網頁事件的示意圖;圖6是本發明一個實施例的上傳下載時進行數據壓縮和解壓縮的示意圖;圖7是本發明一個實施例的服務器端分割頁面的示意圖;圖8是本發明一個實施例的客戶端瀏覽器顯示的內容塊的示意圖;圖9是本發明一個實施例的服務器的結構示意圖;圖10是本發明一個實施例的服務器端遠程控制客戶端瀏覽器的示意圖。
具體實施例方式下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。為了解決現有技術中云端內核瀏覽器存在的客戶端渲染效果差、以及交互操作支持較差的問題,本發明提供了一種服務器端瀏覽器實現方法及服務器,圖I是本發明一個實施例的服務器端顯示頁面和客戶端瀏覽器顯示頁面的示意圖,圖10是本發明一個實施例的服務器端遠程控制客戶端瀏覽器的示意圖,如圖1、10所示,本發明實施例采用遠程桌面技術來實現C/S架構下的瀏覽器(包括移動瀏覽器和PC瀏覽器等),客戶端相當于一個遠程桌面控件,通過遠程桌面技術來控制服務器(優選地,可以是云端服務器)上的實際瀏覽器程序或進程。服務器根據客戶端的具體情況(例如,分辨率、以及用戶代理(UserAgent,簡稱為UA),UA中包括用戶的手機信息,例如手機型號等)啟動不同的瀏覽器,用戶通過操作客戶端來遠程控制服務器上對應的瀏覽器,進行各種操作,包括輸入URL,點擊鏈接、滾屏 等,而服務器端的瀏覽器在接收到用戶的操作后進行相應的處理,并將處理的結果以特定的壓縮格式返回給客戶端。此外,用戶在瀏覽頁面時,可能會在一個頁面通過上下滾屏來閱讀網頁,或者后退到某個已經閱讀過的頁面,這時,如果不使用緩存技術,就會再次進行顯示數據的傳輸,無論是在響應速度還是在流量消耗上都會有很大影響,因此,本發明實施例采用了客戶端緩存技術來緩解和解決這個問題。目前的網站和上網的人群日益增長,在互聯網給人們帶來方便的同時,也有些網站通過各種方式損害用戶的權益,從而獲取個人利益。本發明實施例的技術方案為了提高了瀏覽器的安全性,在用戶訪問不安全網址時,服務器將根據安全策略,對不同的威脅用戶安全的問題做不同的處理,使用戶在無需了解任何相關知識的前提下能夠安全上網。以下結合附圖以及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不限定本發明。根據本發明的實施例,提供了一種服務器端瀏覽器實現方法,圖2是本發明一個實施例的實現服務器端瀏覽器的方法的流程圖,如圖2所示,根據本發明實施例的實現服務器端瀏覽器的方法包括如下處理步驟201,接收客戶端瀏覽器發送的啟動請求,在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器,并向客戶端瀏覽器發送啟動成功響應;需要說明的是,本發明實施例的服務器端可以為云端服務器。步驟201中,在接收到客戶端啟動瀏覽器的請求后,服務器端需要啟動一個真實的瀏覽器(客戶端瀏覽器只是一個類似與遠程控制的客戶端),在本發明實施例中,這個瀏覽器會綁定該客戶端,不會被其它客戶端訪問到,能夠保護用戶的隱私數據。優選地,在步驟201中,在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器時,首先需要在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與服務器端瀏覽器進程對應的服務器端瀏覽器頁面。在本發明實施例中,啟動請求中還可以攜帶有客戶端瀏覽器的用戶標識。服務器端可以根據上述用戶標識將用戶數據(包括瀏覽器收藏夾數據、和/或瀏覽歷史數據)存儲在數據庫中,并根據客戶端瀏覽器發送的用戶操作更新數據庫中相應的用戶數據。在服務器端接收到客戶端側的用戶登錄請求并登陸成功后,服務器端瀏覽器進程根據用戶標識從數據庫中獲取相應的用戶數據,并將用戶數據加載在緩存中相應的服務器端瀏覽器頁面中。在實際應用中,有些用戶數據涉及到用戶的個人財產安全而不能在服務器端進行存儲,而有的用戶數據為了方便用戶操作是需要在服務器端進行存儲的,例如,收藏夾、瀏覽歷史等其它信息。服務器端將每個用戶的這些數據維護成一個表,同時可以使用用戶登錄的密碼進行加密。在某個用戶啟動客戶端瀏覽器時,服務端將用戶的ID (或其它信息)作為key,獲取到對應的用戶數據,并加載到服務器端當前為該用戶啟動的瀏覽器上。此外,用戶可以執行一些操作從而對這些數據進行管理,服務器端根據用戶的操作請求作出相應的處理,最終更新到服務器端對應用戶的數據表上,完成用戶的操作請求。步驟202,獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器。 在步驟202中,瀏覽器端需要獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息,其中,用戶對客戶端瀏覽器輸入的信息包括用戶對客戶端瀏覽器輸入的文字信息、用戶對客戶端瀏覽器進行滾屏操作的偏移量、或者用戶對客戶端瀏覽器進行瀏覽器事件操作或網頁事件操作的輸入焦點位置信息等。服務器端獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器。隨后,客戶端瀏覽器顯示和/或執行服務器端返回的操作結果信息。下面對用戶對服務器端進行各種操作時的處理過程進行詳細說明。圖3是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖一,圖4是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖二,如圖3和圖4所示,根據本發明實施例的客戶端瀏覽器與服務器端的交互包括如下幾種操作一、輸入服務器端需要獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的文字信息和輸入文字信息的輸入焦點位置信息;隨后,根據輸入焦點位置信息計算出在服務器端瀏覽器上對應的輸入框,將信息填入數據框,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的客戶端瀏覽器需要更新的顯示內容信息。在實際應用中,服務器端在接收到客戶端瀏覽器發送的輸入信息后,會根據客戶端瀏覽器發送的位置信息計算出對應的輸入框,并將客戶端瀏覽器提交的輸入信息填寫到輸入框中,最后返回給客戶端對應的響應(成功或錯誤碼)以及需要更新的顯示內容。二、滾屏操作服務器端獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器進行滾屏操作的偏移量;并根據滾屏操作的偏移量計算頁面偏移量,并根據頁面偏移量確定客戶端瀏覽器需要更新的顯示內容信息,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有客戶端瀏覽器需要更新的顯示內容信息。在計算頁面偏移量時,如果dx_p+x+瀏覽器寬度 > 頁面寬度,則Clx5iffl=頁面寬度-(X+瀏覽器寬度),否則,cUB=dx_p,其中,dx_為客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;如果dy_p+y+瀏覽器高度 > 頁面高度,則dy_=頁面高度-(X+瀏覽器高度),否則,尖頁面二七雜,其中,dy_p為客戶端瀏覽器提交的用戶進行滾屏操作的I軸的偏移量,y為頁面當前位置的I軸坐標。例如,如客戶端提交的偏移dx=50, dy=100,頁面當前的位置為x=0, y=100,頁面寬度 page_width=500,高度 page_height=1000,瀏覽器的寬度 device_width=480,高度device_height = 800,為了保證偏移后瀏覽器不會超出頁面的顯示范圍,最終的偏移量為dx=20,dy=100o三、事件在本發明實施例中,事件分為兩種瀏覽器事件和網頁事件,其中,瀏覽器事件 指客戶端與服務器端瀏覽器的交互事件,包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、撤銷操作等,這些事件通過用戶在客戶端點擊瀏覽器顯示的按鍵或菜單完成,客戶端瀏覽器將點擊的位置信息上傳給服務器端,由服務器端瀏覽器完成后續處理。網頁事件指客戶端通過服務器端瀏覽器與網頁之間的交互事件。用戶在瀏覽網頁時,會點擊上面不同的鏈接、圖片、按鍵等控件,客戶端瀏覽器根據用戶點擊的位置、時間等信息傳輸給服務器端,并根據服務器端的響應做出相應的處理。具體地,服務器端從客戶端瀏覽器獲取用戶對客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據輸入焦點位置信息判斷事件類型是瀏覽器事件還是網頁事件;隨后,根據事件類型執行相應的處理,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有服務器端處理成功或失敗的信息、以及處理成功時攜帶的客戶端瀏覽器的顯示內容信息。圖5是一個本發明實施例的判斷事件類型是瀏覽器事件還是網頁事件的示意圖,如圖5所示,接收到客戶端對應的點擊后,服務器端根據提交的位置信息計算出對應服務端瀏覽器的位置,來判斷該事件的類型若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件;若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件。在事件類型為瀏覽器事件的情況下,服務器端直接根據瀏覽器事件在服務器端瀏覽器執行相應操作;也就是說,服務器端根據瀏覽器事件進行相應的處理,無需向網頁提交事件,在事件處理完成后返回給客戶端對應的響應。例如,新建標簽頁,服務端瀏覽器在新建前先判斷標簽頁是否達到上限,如果達到,則直接返回客戶端不成功響應,否則,新建標簽頁并顯示該頁,將結果返回給客戶端。在事件類型為網頁事件的情況下,服務器端根據用戶的網頁事件操作,在服務器端瀏覽器上執行網頁事件操作,與響應的網站服務器進行交互,將輸入信息透傳到相應的網站服務器。在實際應用中,服務器端瀏覽器會模擬一次真實的點擊事件,由不同的點擊對象(控件)觸發不同的響應。如果是一個鏈接,則打開對應的頁面;如果是一個按鍵,則進行表單提交操作。待網站返回響應后,服務器端將響應進行處理后返回給客戶端,使其能夠顯示對應的內容。四、下載和上傳在用戶需要上傳數據時,服務器端從客戶端瀏覽器下載用戶需要上傳到網頁的數據,并將該數據上傳到相應的網站服務器;在用戶需要下載數據時,服務器端根據客戶端瀏覽器的請求從相應的網站服務器下載用戶需要從網頁下載的數據,并將該數據上傳到客戶端瀏覽器。也就是說,在客戶端瀏覽器進行上傳操作時,服務器端先將文件通過FTP或私有協議上傳到服務端,最終由服務器端完成向網站上傳文件的操作,并返回給客戶端對應的響應。在客戶端瀏覽器進行下載操作時,服務器端先將文件下載到本地,最終通過FTP或私有協議下載到客戶端。圖6是本發明一個實施例的上傳下載時進行數據壓縮和解壓縮的示意圖,如圖6所示,在上傳或下載文件時,服務器端可以進行gzip或其它算法的數據壓縮,使傳輸的數據盡可能小,從而即減少了流量又提供了速度,在服務器端和客戶端瀏覽器都有對應的壓縮和解壓縮功能,保證文件只是在傳輸過程中是壓縮形式,而體現在客戶端瀏覽器或網站時是非壓縮原有格式。五、關閉瀏覽器 服務器端接收客戶端瀏覽器發送的關閉請求時,關閉服務器端瀏覽器,并向客戶端瀏覽器發送關閉成功響應;或者,服務器端主動向客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到客戶端瀏覽器返回的響應信息,則自動關閉服務器端瀏覽器。在實際應用中,關閉服務器端瀏覽器時,服務器端需要將存儲指定數據(例如,用戶的收藏夾數據、瀏覽歷史數據等),然后清除用戶信息、cookie及緩存后,才能關閉服務器端瀏覽器。需要說明的是,在上述操作中,服務器端對客戶端請求的響應最終返回的是顯示相關的數據,具體的方式有兩種一種是只返回當前顯示范圍內的數據,當用戶滾屏時,根據偏移來返回對應的數據;另一種是返回當前顯示的數據后,在用戶瀏覽的同時,將超出顯示范圍內的數據也傳送過來。此外,在實際應用中,用戶在瀏覽網站時,有時會輸入個人信息用以登陸、支付等操作,這就出現了安全問題。在本發明實施例中,為了保證客戶端瀏覽器的安全,服務器端會對用戶間數據進行隔離,具體地,對于不同用戶來說,服務器端會為每個用戶創建一個瀏覽器實例,一個瀏覽器實例可以開啟多個窗口,為了保證用戶信息的安全性,用戶所對應的瀏覽器實例會進行數據隔離,并且在用戶退出時將對應的瀏覽器實例銷毀。此外,服務器端不存儲用戶隱私數據,服務器端對用戶提交的個人信息不進行存儲,這樣有效的防止黑客即使成功攻擊入侵服務器時,也無法獲取到用戶的個人信息。在本發明實施例中,為了解決用戶瀏覽已瀏覽過頁面或部分的響應問題,當客戶端新請求一個頁面時,由服務器端將這個頁面分割成小塊,將分割后的小塊進行標記key,并計算出該塊數據的HASH值hash_value, key和hash_value與該塊的數據一并發送給客戶端。客戶端在接收到數據后,將數據進行緩存,當下次再瀏覽該塊頁面時,只需將key和hash_value傳送給服務器端以判斷該塊數據是否依然有效,即判斷該塊頁面與當前服務器端對應頁面塊(key)對應的數據(通過hash_Value)是否相同,來決定是否需要重傳數據。如果某塊有變化,則只需要傳輸變化的那塊數據。其中,key值由URL、橫向起始位置和縱向起始位置組成。也就是說,在本發明實施例中,上述顯示內容信息包括將顯示內容進行分塊后的一塊或多塊顯示數據、與各塊顯示數據對應的key值、以及與各塊顯示數據對應的哈希值。瀏覽器端接收客戶端瀏覽器發送的組成顯示內容的各塊顯示數據所對應的key值和哈希值;并判斷key值和哈希值與服務器端瀏覽器相對應顯示內容的各塊顯示數據所對應的key值和哈希值是否相同,如果不同,則將最新顯示數據、以及相應的key值和哈希值發送到客戶端瀏覽器。圖7是本發明一個實施例的服務器端分割頁面的示意圖,圖8是本發明一個實施例的客戶端瀏覽器顯示的內容塊的示意圖,如圖7和圖8所示,圖7表示了服務器端對網頁所做的頁面分割處理,并根據url、偏移位置等信息計算出每個塊的key和hash_valUe值;圖8表示了客戶端瀏覽器當前瀏覽該頁面所覆蓋的塊www. test. com. cn_0_0、www. test,com. cn_0_240到www. test. com. cn_240_640,客戶端瀏覽器將這些塊的數據以塊為單位進行緩存。當用戶再次瀏覽當前區域的內容時,只需要將覆蓋的塊的key和hash_Value值傳給服務器端,由服務器判斷是否需要對某些塊的數據進行重傳。·
為了保證用戶的網絡安全,在本發明實施例中,服務器端還設置有安全策略,主要分為頁面病毒文件隔離、木馬文件檢查和惡意網址過濾。其中,病毒文件隔離當前的電腦病毒大多是通過互聯網進行傳輸的,服務器端能夠接入網絡安全公司的病毒庫,可以快速的檢測出病毒文件,并及時的進行隔離,防止病毒傳輸到用戶客戶端,有效的阻斷了病毒的傳輸。木馬文件檢查現在有很多網站被惡意的掛上木馬文件,用戶的一些個人信息會被這些木馬文件獲取,并發送給木馬的擁有者,從而造成了用戶信息的泄漏。服務器端可以有效的查殺木馬,保證用戶的個人數據安全。惡意網址過濾服務器端通過接入一些知名網絡安全公司的安全網址庫和惡意網址庫,來幫助用戶判斷網址的性質,并給予用戶一定的提示信息,保證用戶的個人權益。對有惡意代碼的網頁,服務器端通過與安全防護軟件或其他方式來保證服務器端的網絡安全。綜上所述,本發明實施例的技術方案在響應速度快,流量消耗少的情況下,還能保證很好的渲染效果,同時支持所有的用戶操作,給用戶提供了很好的上網環境,保證用戶的上網安全。根據本發明的實施例,提供了一種服務器,需要說明的是,本發明實施例的服務器可以為云端服務器。圖9是本發明一個實施例的服務器的結構示意圖,如圖9所示,根據本發明實施例的服務器包括啟動單元90、以及處理單元92,以下對本發明實施例的各個模塊進行詳細的說明。啟動單元90,適于通過客戶端交互接口接收客戶端瀏覽器發送的啟動請求,啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器,并通過客戶端交互接口向客戶端瀏覽器發送啟動成功響應;在接收到客戶端啟動瀏覽器的請求后,啟動單元90需要啟動一個真實的瀏覽器(客戶端瀏覽器只是一個類似與遠程控制的客戶端),在本發明實施例中,這個瀏覽器會綁定該客戶端,不會被其它客戶端訪問到,能夠保護用戶的隱私數據。優選地,啟動單元90在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器時,首先需要在服務器端啟動一個與客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與服務器端瀏覽器進程對應的服務器端瀏覽器頁面。在本發明實施例中,啟動請求中還可以攜帶有客戶端瀏覽器的用戶標識。服務器端的用戶數據存儲模塊可以根據上述用戶標識將用戶數據(包括瀏覽器收藏夾數據、和/或瀏覽歷史數據)存儲在數據庫中,服務器端的用戶數據更新模塊根據客戶端瀏覽器發送的用戶操作更新數據庫中相應的用戶數據。在接收到客戶端側的用戶登錄請求并登陸成功后,啟動單元90根據用戶標識從數據庫中獲取相應的用戶數據,并將用戶數據加載在緩存中相應的服務器端瀏覽器頁面中。在實際應用中,有些用戶數據涉及到用戶的個人財產安全而不能在服務器端進行存儲,而有的用戶數據為了方便用戶操作是需要在服務器端進行存儲的,例如,收藏夾、瀏覽歷史等其它信息。用戶數據存儲模塊將每個用戶的這些數據維護成一個表,同時可以使用用戶登錄的密碼進行加密。在某個用戶啟動客戶端瀏覽器時,啟動單元90將用戶的ID(或其它信息)作為key,獲取到對應的用戶數據,并加載到服務器端當前為該用戶啟動的瀏覽器上。此外,用戶可以執行一些操作從而對這些數據進行管理,用戶數據更新模塊根據用戶的操作請求作出相應的處理,最終更新到服務器端對應用戶的數據表上,完成用戶的操作請求。處理單元92,適于通過客戶端交互接口獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器。處理單元92需要獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息,其中,用戶對客戶端瀏覽器輸入的信息包括用戶對客戶端瀏覽器輸入的文字信息、用戶對客戶端瀏覽器進行滾屏操作的偏移量、或者用戶對客戶端瀏覽器進行瀏覽器事件操作或網頁事件操作的輸入焦點位置信息等。·
處理單元92獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據信息和輸入焦點位置信息對服務器端瀏覽器執行相應處理,并將操作結果信息發送到客戶端瀏覽器。隨后,客戶端瀏覽器顯示和/或執行服務器端返回的操作結果息。下面對用戶對服務器端進行各種操作時的處理過程進行詳細說明。圖3是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖一,圖4是本發明一個實施例的客戶端瀏覽器與服務器端進行交互的處理示意圖二,如圖3和圖4所示,根據本發明實施例的客戶端瀏覽器與服務器端的交互包括如下幾種操作一、輸入處理單元92需要獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器輸入的文字信息和輸入文字信息的輸入焦點位置信息;隨后,根據輸入焦點位置信息計算出在服務器端瀏覽器上對應的輸入框,將信息填入數據框,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的客戶端瀏覽器需要更新的顯示內容信息。在實際應用中,處理單元92在接收到客戶端瀏覽器發送的輸入信息后,會根據客戶端瀏覽器發送的位置信息計算出對應的輸入框,并將客戶端瀏覽器提交的輸入信息填寫到輸入框中,最后返回給客戶端對應的響應(成功或錯誤碼)以及需要更新的顯示內容。二、滾屏操作處理單元92獲取客戶端瀏覽器發送的用戶對客戶端瀏覽器進行滾屏操作的偏移量;并根據滾屏操作的偏移量計算頁面偏移量,隨后根據頁面偏移量確定客戶端瀏覽器需要更新的顯示內容信息,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有客戶端瀏覽器需要更新的顯示內容信息。在計算頁面偏移量時,如果dx_p+x+瀏覽器寬度 > 頁面寬度,則Clx5iffl=頁面寬度-(X+瀏覽器寬度),否則,cUB=dx_p,其中,dx_為客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;如果dy_p+y+瀏覽器高度 > 頁面高度,則dy_=頁面高度-(X+瀏覽器高度),否則,尖頁面二七雜,其中,dy_p為客戶端瀏覽器提交的用戶進行滾屏操作的I軸的偏移量,y為頁面當前位置的I軸坐標。例如,如客戶端提交的偏移dx=50, dy=100,頁面當前的位置為x=0, y=100,頁面寬度 page_width=500,高度 page_height=1000,瀏覽器的寬度 device_width=480,高度·device_height=800,為了保證偏移后瀏覽器不會超出頁面的顯示范圍,最終的偏移量為dx=20, dy=100o三、事件在本發明實施例中,事件分為兩種瀏覽器事件和網頁事件,其中,瀏覽器事件指客戶端與服務器端瀏覽器的交互事件,包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、撤銷操作等,這些事件通過用戶在客戶端點擊瀏覽器顯示的按鍵或菜單完成,客戶端瀏覽器將點擊的位置信息上傳給服務器端,由服務器端瀏覽器完成后續處理。網頁事件指客戶端通過服務器端瀏覽器與網頁之間的交互事件。用戶在瀏覽網頁時,會點擊上面不同的鏈接、圖片、按鍵等控件,客戶端瀏覽器根據用戶點擊的位置、時間等信息傳輸給服務器端,并根據服務器端的響應做出相應的處理。具體地,處理單元92從客戶端瀏覽器獲取用戶對客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據輸入焦點位置信息判斷事件類型是瀏覽器事件還是網頁事件;隨后,根據事件類型執行相應的處理,并向客戶端瀏覽器反饋響應信息,其中,響應信息中攜帶有服務器端處理成功或失敗的信息、以及處理成功時攜帶的客戶端瀏覽器的顯示內容信息。圖5是本發明一個實施例的判斷事件類型是瀏覽器事件還是網頁事件的示意圖,如圖5所示,接收到客戶端對應的點擊后,處理單元92根據提交的位置信息計算出對應服務端瀏覽器的位置,來判斷該事件的類型若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件;若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件。在事件類型為瀏覽器事件的情況下,處理單元92直接根據瀏覽器事件在服務器端瀏覽器執行相應操作;也就是說,處理單元92根據瀏覽器事件進行相應的處理,無需向網頁提交事件,在事件處理完成后返回給客戶端對應的響應。例如,新建標簽頁,處理單元92在新建前先判斷標簽頁是否達到上限,如果達到,則直接返回客戶端不成功響應,否則,新建標簽頁并顯示該頁,將結果返回給客戶端。在事件類型為網頁事件的情況下,處理單元92根據用戶的網頁事件操作,在服務器端瀏覽器上執行網頁事件操作,與響應的網站服務器進行交互,將輸入信息透傳到相應的網站服務器。在實際應用中,處理單元92會模擬一次真實的點擊事件,由不同的點擊對象(控件)觸發不同的響應。如果是一個鏈接,則打開對應的頁面;如果是一個按鍵,則進行表單提交操作。待網站返回響應后,處理單元92將響應進行處理后返回給客戶端,使其能夠顯示對應的內容。四、下載和上傳在用戶需要上傳數據時,處理單元92從客戶端瀏覽器下載用戶需要上傳到網頁的數據,并將該數據上傳到相應的網站服務器;在用戶需要下載數據時,處理單元92根據客戶端瀏覽器的請求從相應的網站服務器下載用戶需要從網頁下載的數據,并將該數據上傳到客戶端瀏覽器。也就是說,在客戶端瀏覽器進行上傳操作時,處理單元92先將文件通過FTP或私有協議上傳到服務端,最終由服務器端完成向網站上傳文件的操作,并返回給客戶端對應 的響應。在客戶端瀏覽器進行下載操作時,處理單元92先將文件下載到本地,最終通過FTP或私有協議下載到客戶端。圖6是本發明一個實施例的上傳下載時進行數據壓縮和解壓縮的示意圖,如圖6所示,在上傳或下載文件時,處理單元92可以進行gzip或其它算法的數據壓縮,使傳輸的數據盡可能小,從而即減少了流量又提供了速度,在服務器端和客戶端瀏覽器都有對應的壓縮和解壓縮功能,保證文件只是在傳輸過程中是壓縮形式,而體現在客戶端瀏覽器或網站時是非壓縮原有格式。五、關閉瀏覽器服務器端的關閉模塊接收客戶端瀏覽器發送的關閉請求時,關閉服務器端瀏覽器,并向客戶端瀏覽器發送關閉成功響應;或者,關閉模塊主動向客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到客戶端瀏覽器返回的響應信息,則自動關閉服務器端瀏覽器。在實際應用中,關閉服務器端瀏覽器時,關閉模塊需要將存儲指定數據(例如,用戶的收藏夾數據、瀏覽歷史數據等),然后清除用戶信息、cookie及緩存后,才能關閉服務器端瀏覽器。需要說明的是,在上述操作中,處理單元92對客戶端請求的響應最終返回的是顯示相關的數據,具體的方式有兩種一種是只返回當前顯示范圍內的數據,當用戶滾屏時,根據偏移來返回對應的數據;另一種是返回當前顯示的數據后,在用戶瀏覽的同時,將超出顯示范圍內的數據也傳送過來。此外,在實際應用中,用戶在瀏覽網站時,有時會輸入個人信息用以登陸、支付等操作,這就出現了安全問題。在本發明實施例中,為了保證客戶端瀏覽器的安全,服務器端的會對用戶間數據進行隔離,具體地,對于不同用戶來說,服務器端會為每個用戶創建一個瀏覽器實例,一個瀏覽器實例可以開啟多個窗口,為了保證用戶信息的安全性,用戶所對應的瀏覽器實例會進行數據隔離,并且在用戶退出時將對應的瀏覽器實例銷毀。此外,服務器端不存儲用戶隱私數據,服務器端對用戶提交的個人信息不進行存儲,這樣有效的防止黑客即使成功攻擊入侵服務器時,也無法獲取到用戶的個人信息。在本發明實施例中,為了解決用戶瀏覽已瀏覽過頁面或部分的響應問題,當客戶端新請求一個頁面時,由處理單元92將這個頁面分割成小塊,將分割后的小塊進行標記key,并計算出該塊數據的HASH值hash_value, key和hash_value與該塊的數據一并發送給客戶端。客戶端在接收到數據后,將數據進行緩存,當下次再瀏覽該塊頁面時,只需將key和hash_Value傳送給服務器端以判斷該塊數據是否依然有效,即判斷該塊頁面與當前服務器端對應頁面塊(key)對應的數據(通過hash_Value)是否相同,來決定是否需要重傳數據。如果某塊有變化,則只需要傳輸變化的那塊數據。其中,key值由URL、橫向起始位置和縱向起始位置組成。也就是說,在本發明實施例中,上述顯示內容信息包括將顯示內容進行分塊后的一塊或多塊顯示數據、與各塊顯示數據對應的key值、以及與各塊顯示數據對應的哈希值。處理單元92接收客戶端瀏覽器發送的組成顯示內容的各塊顯示數據所對應的key值和哈希值;并判斷key值和哈希值與服務器端瀏覽器相對應顯示內容的各塊顯示數據所對應的key值和哈希值是否相同,如果不同,則將最新顯示數據、以及相應的key值和哈希值發送到客戶端瀏覽器。圖7是本發明一個實施例的服務器端分割頁面的示意圖,圖8是本發明一個實施例的客戶端瀏覽器顯示的內容塊的示意圖,如圖7和圖8所示,圖7表示了服務器端對網頁 所做的頁面分割處理,并根據url、偏移位置等信息計算出每個塊的key和hash_valUe值;圖8表示了客戶端瀏覽器當前瀏覽該頁面所覆蓋的塊www. test. com. cn_0_0、www. test,com. cn_0_240到www. test. com. cn_240_640,客戶端瀏覽器將這些塊的數據以塊為單位進行緩存。當用戶再次瀏覽當前區域的內容時,只需要將覆蓋的塊的key和hash_Value值傳給服務器端,由服務器判斷是否需要對某些塊的數據進行重傳。為了保證用戶的網絡安全,在本發明實施例中,處理單元92中還設置有過濾模塊、病毒模塊、以及木馬模塊,其中,過濾模塊,適于在事件類型為網頁事件的情況下,對惡意網址進行過濾。病毒模塊,適于對發送到客戶端瀏覽器的數據進行病毒檢測,將檢測出的病毒文件進行隔離;木馬模塊,適于對發送到客戶端瀏覽器的數據進行木馬查殺。具體地,病毒文件隔離當前的電腦病毒大多是通過互聯網進行傳輸的,服務器端能夠接入網絡安全公司的病毒庫,可以快速的檢測出病毒文件,并及時的進行隔離,防止病毒傳輸到用戶客戶端,有效的阻斷了病毒的傳輸。木馬文件檢查現在有很多網站被惡意的掛上木馬文件,用戶的一些個人信息會被這些木馬文件獲取,并發送給木馬的擁有者,從而造成了用戶信息的泄漏。服務器端可以有效的查殺木馬,保證用戶的個人數據安全。惡意網址過濾服務器端通過接入一些知名網絡安全公司的安全網址庫和惡意網址庫,來幫助用戶判斷網址的性質,并給予用戶一定的提示信息,保證用戶的個人權益。對有惡意代碼的網頁,服務器端通過與安全防護軟件或其他方式來保證服務器端的網絡安全。綜上所述,本發明實施例的技術方案在響應速度快,流量消耗少的情況下,還能保證很好的渲染效果,同時支持所有的用戶操作,給用戶提供了很好的上網環境,保證用戶的上網安全。在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式
的權利要求書由此明確地并入該具體實施方式
,其中每個權利要求本身都作為本發明的單獨實施例。本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單 元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP )來實現根據本發明實施例的服務器中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。本文公開了 Al、一種實現服務器端瀏覽器的方法,包括接收客戶端瀏覽器發送的啟動請求,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器,并向所述客戶端瀏覽器發送啟動成功響應;獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器;其中,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器具體包括在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與所述服務器端瀏覽器進程對應的服務器端瀏覽器頁面。A2、如Al所述的方法,其特征在于,所述方法進一步包括接收所述客戶端瀏覽器發送的關閉請求,關閉所述服務器端瀏覽器,并向所述客戶端瀏覽器發送關閉成功響應;或者,向所述客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到所述客戶端瀏覽器返回的響應信息,則自動關閉所述服務器端瀏覽器。A3、如Al至A2中任一項所述的方法,其特征在于,所述方法進一步包括所述啟動請求中攜帶有所述客戶端瀏覽器的用戶標識;根據用戶標識將用戶數據存儲在數據庫中,其中,所述用戶數據包括瀏覽器收藏夾數據、和/或瀏覽歷史數據;根據所述客戶端瀏覽器發送的用戶操作更新所述數據庫中相應的用戶數據。A4、如Al至A3中任一項所述的方法,其特征在于,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器之后,所述方 法進一步包括在接收到客戶端側的用戶登錄請求并登陸成功后,所述服務器端瀏覽器進程根據所述用戶標識從所述數據庫中獲取相應的用戶數據,并將所述用戶數據加載在所述緩存中相應的服務器端瀏覽器頁面中。A5、如Al至A4中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的文字信息和輸入所述文字信息的輸入焦點位置信息;所述服務器端根據所述輸入焦點位置信息計算出在所述服務器端瀏覽器上對應的輸入框,將所述信息填入所述數據框,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的所述客戶端瀏覽器需要更新的顯示內容信息。A6、如Al至A5中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器進行滾屏操作的偏移量;所述服務器端根據所述滾屏操作的偏移量計算頁面偏移量,并根據所述頁面偏移量確定所述客戶端瀏覽器需要更新的顯示內容信息,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述客戶端瀏覽器需要更新的顯示內容信息。A7、如Al至A7中任一項所述的方法,其特征在于,所述服務器端根據所述滾屏操作的偏移量計算頁面偏移量進一步包括如果dx_p+x+瀏覽器寬度 > 頁面寬度,則(1χ5 Β=頁面寬度-(X+瀏覽器寬度),否則,dx_=dx_p,其中,dx_p為所述客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;和/或如果dy_p+y+瀏覽器高度 > 頁面高度,則CU面=頁面高度-(X+瀏覽器高度),否則,dy頁面=dy滾屏,其中,dy滾屏為所述客戶端瀏覽器提交的用戶進行滾屏操作的I軸的偏移量,y為頁面當前位置的I軸坐標。A8、如Al至A7中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括從所述客戶端瀏覽器獲取用戶對所述客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據所述輸入焦點位置信息判斷事件類型,其中,所述事件類型包括瀏覽器事件、或網頁事件;根據所述事件類型執行相應的處理,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述服務器端處理成功或失敗的信息、以及處理成功時攜帶的所述客戶端瀏覽器的顯示內容信息。A9、如Al至AS中任一項所述的方法,其特征在于,根據所述輸入焦點位置信息判斷事件類型具體包括若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件;若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件;根據所述事件類型執行相應的處理進一步包括在所述事件類型為瀏覽器事件的情況下,所述服務器端直接根據所述瀏覽器事件在所述服務器端瀏覽器執行相應操作;在所述事件類型為網頁事件的情況下,所述服務器端根據用戶的網頁事件操作,在所述服務器端瀏覽器上執行所述網頁事件操作,與響應的網站服務器進行交互,將輸入信息透傳到所述相應的網站服務器。A10、如Al至A9中任一項所述的方法,其特征在于,所述瀏覽器事件操作包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、或撤銷操作;所述網頁事件操作包括對網頁上的連接、圖片、或按鈕的操作。AU、如Al至AlO中任一項所述的方法,其特征在于,所述顯示內容信息包括將顯示內容進行分塊后的一塊或多塊顯示數據、與各塊顯示數據對應的key值、·以及與各塊顯示數據對應的哈希值。A12、如Al至All中任一項所述的方法,其特征在于,所述方法進一步包括接收所述客戶端瀏覽器發送的組成顯示內容的各塊顯示數據所對應的key值和哈希值;判斷所述key值和所述哈希值與所述服務器端瀏覽器相對應顯示內容的各塊顯示數據所對應的key值和哈希值是否相同,如果不同,則將最新顯示數據、以及相應的key值和哈希值發送到所述客戶端瀏覽器。A13、如Al至A12中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括從所述客戶端瀏覽器下載用戶需要上傳到網頁的數據,并將該數據上傳到相應的網站服務器;根據所述客戶端瀏覽器的請求從相應的網站服務器下載用戶需要從網頁下載的數據,并將該數據上傳到所述客戶端瀏覽器。A14、如Al至A13中任一項所述的方法,其特征在于,所述方法進一步包括在所述事件類型為網頁事件的情況下,對惡意網址進行過濾。A15、如Al至A14中任一項所述的方法,其特征在于,所述方法進一步包括對發送到所述客戶端瀏覽器的數據進行病毒檢測,將檢測出的病毒文件進行隔離;對發送到所述客戶端瀏覽器的數據進行木馬查殺。本文公開了 B16、一種服務器,包括啟動單元,適于通過客戶端交互接口接收客戶端瀏覽器發送的啟動請求,啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器,并通過所述客戶端交互接口向所述客戶端瀏覽器發送啟動成功響應;處理單元,適于通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器;其中,所述啟動單元進一步適于在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與所述服務器端瀏覽器進程對應的服務器端瀏覽器頁面。B17、如B16所述的服務器,其特征在于,所述服務器進一步包括關閉模塊,適于通過所述客戶端交互接口接收所述客戶端瀏覽器發送的關閉請求,關閉所述服務器端瀏覽器,并通過所述客戶端交互接口向所述客戶端瀏覽器發送關閉成功響應,或者,向所述客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到所述客戶端瀏覽器返回的響應信息,則自動關閉所述服務器端瀏覽器。B18、如權利要求B16至B17中任一項所述的服務器,其特征在于,所述啟動請求中攜帶有所述客戶端瀏覽器的用戶標識;所述服務器進一步包括用戶數據存儲模塊,適于根據用戶標識將用戶數據存儲在數據庫中,其中,所述用戶數據包括瀏覽器收藏夾數據、和/或瀏覽歷史數據;用戶數據更新模塊,適于根據所述客戶端瀏覽器發送的用戶操作更新所述數據庫中相應的用戶數據。B19、如B16至B18中任一項所述的服務器,其特征在于,所述啟動單元進一步適于在通過所述客戶端交互接口接收到客戶端側的用戶登錄請求并登陸成功后,通過所述服務器端瀏覽器進程,根據所述用戶標識從所述數據庫中獲取相應的用戶數據,并將所述用戶數據加載在所述緩存中相應的服務器端瀏覽器頁面中。B20、如B16至B19中任一項所述的服務器,其特征在于,所述處理單元進一步適于通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的文字信息和輸入所述文字信息的輸入焦點位置信息;根據所述輸入焦點位置信息計算出在所述服務器端瀏覽 器上對應的輸入框,將所述信息填入所述數據框,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的所述客戶端瀏覽器需要更新的顯示內容信息。B21、如B16至B20中任一項所述的服務器,其特征在于,所述處理單元進一步適于通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器進行滾屏操作的偏移量;根據所述滾屏操作的偏移量計算頁面偏移量,并根據所述頁面偏移量確定所述客戶端瀏覽器需要更新的顯示內容信息,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述客戶端瀏覽器需要更新的顯示內容信息。B22、如B16至B21中任一項所述的服務器,其特征在于,所述處理單元進一步適于如果+X+瀏覽器覽度〉頁面覽度,則確定dx@j|j=頁面覽度-(X+瀏覽器寬度),否則,cUB=dx_p,其中,dx_為所述客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;和/或如果dy_p+y+瀏覽器高度 > 頁面高度,則確定dy 頁面高度-(X+瀏覽器高度),否則,dyMffl=Clyjsii,其中,dy_p為所述客戶端瀏覽器提交的用戶進行滾屏操作的I軸的偏移量,y為頁面當前位置的I軸坐標。B23、如B16至B22中任一項所述的服務器,其特征在于,所述處理單元進一步適于通過所述客戶端交互接口從所述客戶端瀏覽器獲取用戶對所述客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據所述輸入焦點位置信息判斷事件類型,其中,所述事件類型包括瀏覽器事件、或網頁事件;根據所述事件類型執行相應的處理,并通過所述客戶端交互接口向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述服務器端處理成功或失敗的信息、以及處理成功時攜帶的所述客戶端瀏覽器的顯示內容信息。B24、如B16至B23中任一項所述的服務器,其特征在于,所述處理單元進一步適于若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件;若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件;在所述事件類型為瀏覽器事件的情況下,直接根據所述瀏覽器事件在所述服務器端瀏覽器執行相應操作;在所述事件類型為網頁事件的情況下,根據用戶的網頁事件操作,在所述服務器端瀏覽器上執行所述網頁事件操作,通過網站服務器交互接口與響應的網站服務器進行交互,將操作信息透傳到所述相應的網站服務器。B25、如B16至B24中任一項所述的服務器,其特征在于,所述瀏覽器事件操作包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、或撤銷操作;所述網頁事件操作包括對網頁上的連接、圖片、或按鈕的操作。B26、如B16至B25中任一項所述的服務器,其特征在于,所述顯示內容信息包括將顯示內容進行分塊后的一塊或多塊顯示數據、與各塊顯示數據對應的key值、以及與各塊顯示數據對應的哈希值。B27、如B16至B26中任一項所述的服務器,其特征在于,所述處理單元進一步包括接收所述客戶端瀏覽器發送的組成顯示內容的各塊顯示數據所對應的key值和哈希值;判斷所述key值和所述哈希值與所述服務器端瀏覽器相對應顯示內容的各塊顯示數據所對應的key值和哈希值是否相同,如果不同,則將最新顯示數據、以及相應的key值和哈希值發送到所述客戶端瀏覽器。B28、如B16至B27中任一項所述的服務器,其特征在于,所述處理單元進一步適于從所述客戶端瀏覽器下載用戶需要上傳到網頁的數據,并將該數據上傳到相應的網站服務器;從所述客戶端瀏覽器下載用戶需要上傳到網頁的數據,并將該數據上傳到相應的網站服務器。B29、如B16至B28中任一項所述的服務器,其特征在于,所述服務器進一步包括過濾模塊,適于在所述事件類型為網頁事件的情況下,對惡意網址進行過濾。B30、如B16至B29中任一項所述的服務器,其特征在于,所述服務器進一步包括病毒模塊,適于對發送到所述客戶端瀏覽器的數據進行病毒檢測,將檢測出的病毒文件進行隔離;木馬模塊,適于對發送到所述客戶端瀏覽器的數據進行木馬查殺。·
權利要求
1.一種實現服務器端瀏覽器的方法,包括 接收客戶端瀏覽器發送的啟動請求,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器,并向所述客戶端瀏覽器發送啟動成功響應; 獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據所述信息和所述輸入焦點位 置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器; 其中,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器具體包括 在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與所述服務器端瀏覽器進程對應的服務器端瀏覽器頁面。
2.如權利要求I所述的方法,其特征在于,所述方法進一步包括 接收所述客戶端瀏覽器發送的關閉請求,關閉所述服務器端瀏覽器,并向所述客戶端瀏覽器發送關閉成功響應;或者, 向所述客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到所述客戶端瀏覽器返回的響應信息,則自動關閉所述服務器端瀏覽器。
3.如權利要求I至2中任一項所述的方法,其特征在于,所述方法進一步包括所述啟動請求中攜帶有所述客戶端瀏覽器的用戶標識; 根據用戶標識將用戶數據存儲在數據庫中,其中,所述用戶數據包括瀏覽器收藏夾數據、和/或瀏覽歷史數據; 根據所述客戶端瀏覽器發送的用戶操作更新所述數據庫中相應的用戶數據。
4.如權利要求I至3中任一項所述的方法,其特征在于,在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器之后,所述方法進一步包括 在接收到客戶端側的用戶登錄請求并登陸成功后,所述服務器端瀏覽器進程根據所述用戶標識從所述數據庫中獲取相應的用戶數據,并將所述用戶數據加載在所述緩存中相應的服務器端瀏覽器頁面中。
5.如權利要求I至4中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括 獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的文字信息和輸入所述文字信息的輸入焦點位置信息; 所述服務器端根據所述輸入焦點位置信息計算出在所述服務器端瀏覽器上對應的輸入框,將所述信息填入所述數據框,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的所述客戶端瀏覽器需要更新的顯示內容信息。
6.如權利要求I至5中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器進行滾屏操作的偏移量; 所述服務器端根據所述滾屏操作的偏移量計算頁面偏移量,并根據所述頁面偏移量確定所述客戶端瀏覽器需要更新的顯示內容信息,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述客戶端瀏覽器需要更新的顯示內容信息。
7.如權利要求I至6中任一項所述的方法,其特征在于,所述服務器端根據所述滾屏操作的偏移量計算頁面偏移量進一步包括 如果dx_+x+瀏覽器寬度 > 頁面寬度,則dx 頁面寬度-(X+瀏覽器寬度),否則,dx_=dx_p,其中,dx_為所述客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;和/或 如果dy_p+y+瀏覽器高度 > 頁面高度,則dy 頁面高度-(X+瀏覽器高度),否則,dy_=dy_p,其中,dy_為所述客戶端瀏覽器提交的用戶進行滾屏操作的y軸的偏移量,y為頁面當前位置的γ軸坐標。
8.如權利要求I至7中任一項所述的方法,其特征在于,獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和/或輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器進一步包括 從所述客戶端瀏覽器獲取用戶對所述客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據所述輸入焦點位置信息判斷事件類型,其中,所述事件類型包括瀏覽器事件、或網頁事件; 根據所述事件類型執行相應的處理,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述服務器端處理成功或失敗的信息、以及處理成功時攜帶的所述客戶端瀏覽器的顯示內容信息。
9.如權利要求I至8中任一項所述的方法,其特征在于,根據所述輸入焦點位置信息判斷事件類型具體包括 若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件; 若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件; 根據所述事件類型執行相應的處理進一步包括 在所述事件類型為瀏覽器事件的情況下,所述服務器端直接根據所述瀏覽器事件在所述服務器端瀏覽器執行相應操作; 在所述事件類型為網頁事件的情況下,所述服務器端根據用戶的網頁事件操作,在所述服務器端瀏覽器上執行所述網頁事件操作,與響應的網站服務器進行交互,將輸入信息透傳到所述相應的網站服務器。
10.如權利要求I至9中任一項所述的方法,其特征在于, 所述瀏覽器事件操作包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、或撤銷操作; 所述網頁事件操作包括對網頁上的連接、圖片、或按鈕的操作。
11.一種服務器,包括 啟動單元,適于通過客戶端交互接口接收客戶端瀏覽器發送的啟動請求,啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器,并通過所述客戶端交互接口向所述客戶端瀏覽器發送啟動成功響應; 處理單元,適于通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的信息和輸入焦點位置信息,根據所述信息和所述輸入焦點位置信息對所述服務器端瀏覽器執行相應處理,并將操作結果信息發送到所述客戶端瀏覽器; 其中,所述啟動單元進一步適于在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與所述服務器端瀏覽器進程對應的服務器端瀏覽器頁面。
12.如權利要求11所述的服務器,其特征在于,所述服務器進一步包括 關閉模塊,適于通過所述客戶端交互接口接收所述客戶端瀏覽器發送的關閉請求,關閉所述服務器端瀏覽器,并通過所述客戶端交互接口向所述客戶端瀏覽器發送關閉成功響應,或者,向所述客戶端瀏覽器發送關閉請求,如果在預定時間內未接收到所述客戶端瀏覽器返回的響應信息,則自動關閉所述服務器端瀏覽器。
13.如權利要求11至12中任一項所述的服務器,其特征在于,所述啟動請求中攜帶有所述客戶端瀏覽器的用戶標識; 所述服務器進一步包括 用戶數據存儲模塊,適于根據用戶標識將用戶數據存儲在數據庫中,其中,所述用戶數據包括瀏覽器收藏夾數據、和/或瀏覽歷史數據; 用戶數據更新模塊,適于根據所述客戶端瀏覽器發送的用戶操作更新所述數據庫中相應的用戶數據。
14.如權利要求11至13中任一項所述的服務器,其特征在于,所述啟動單元進一步適于在通過所述客戶端交互接口接收到客戶端側的用戶登錄請求并登陸成功后,通過所述服務器端瀏覽器進程,根據所述用戶標識從所述數據庫中獲取相應的用戶數據,并將所述用戶數據加載在所述緩存中相應的服務器端瀏覽器頁面中。
15.如權利要求11至14中任一項所述的服務器,其特征在于,所述處理單元進一步適于 通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器輸入的文字信息和輸入所述文字信息的輸入焦點位置信息; 根據所述輸入焦點位置信息計算出在所述服務器端瀏覽器上對應的輸入框,將所述信息填入所述數據框,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有輸入成功或失敗的信息、以及在輸入文字信息成功時攜帶的所述客戶端瀏覽器需要更新的顯示內容信息。
16.如權利要求11至15中任一項所述的服務器,其特征在于,所述處理單元進一步適于 通過所述客戶端交互接口獲取所述客戶端瀏覽器發送的用戶對所述客戶端瀏覽器進行滾屏操作的偏移量; 根據所述滾屏操作的偏移量計算頁面偏移量,并根據所述頁面偏移量確定所述客戶端瀏覽器需要更新的顯示內容信息,并向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述客戶端瀏覽器需要更新的顯示內容信息。
17.如權利要求11至16中任一項所述的服務器,其特征在于,所述處理單元進一步適于: 如果dx_p+x+瀏覽器寬度 > 頁面寬度,則確定dx5iB=頁面寬度-(X+瀏覽器寬度),否貝U,dxMffl=Clxjs5i,其中,dx_p為所述客戶端瀏覽器提交的用戶進行滾屏操作的X軸的偏移量,X為頁面當前位置的X軸坐標;和/或 如果dy_p+y+瀏覽器高度 > 頁面高度,則確定dy 頁面高度-(X+瀏覽器高度),否貝U,dyMffl=Clyjs5i,其中,dy_p為所述客戶端瀏覽器提交的用戶進行滾屏操作的y軸的偏移量,I為頁面當前位置的I軸坐標。
18.如權利要求11至17中任一項所述的服務器,其特征在于,所述處理單元進一步適于 通過所述客戶端交互接口從所述客戶端瀏覽器獲取用戶對所述客戶端瀏覽器進行點擊的輸入焦點位置信息,并根據所述輸入焦點位置信息判斷事件類型,其中,所述事件類型包括瀏覽器事件、或網頁事件; 根據所述事件類型執行相應的處理,并通過所述客戶端交互接口向所述客戶端瀏覽器反饋響應信息,其中,所述響應信息中攜帶有所述服務器端處理成功或失敗的信息、以及處理成功時攜帶的所述客戶端瀏覽器的顯示內容信息。
19.如權利要求11至18中任一項所述的服務器,其特征在于,所述處理單元進一步適于 若輸入焦點位置在瀏覽器框架上,則確定事件類型為瀏覽器事件; 若輸入焦點位置在網頁范圍內,則確定事件類型為網頁事件; 在所述事件類型為瀏覽器事件的情況下,直接根據所述瀏覽器事件在所述服務器端瀏覽器執行相應操作; 在所述事件類型為網頁事件的情況下,根據用戶的網頁事件操作,在所述服務器端瀏覽器上執行所述網頁事件操作,通過網站服務器交互接口與響應的網站服務器進行交互,將操作信息透傳到所述相應的網站服務器。
20.如權利要求11至19中任一項所述的服務器,其特征在于, 所述瀏覽器事件操作包括新建標簽頁、關閉標簽頁、切換標簽頁、管理收藏夾、或撤銷操作; 所述網頁事件操作包括對網頁上的連接、圖片、或按鈕的操作。
全文摘要
本發明公開了一種實現服務器端瀏覽器的方法和服務器。該服務器包括啟動單元;處理單元;其中,所述啟動單元進一步適于在所述服務器端啟動一個與所述客戶端瀏覽器相對應的服務器端瀏覽器進程,并在緩存中啟動一個與所述服務器端瀏覽器進程對應的服務器端瀏覽器頁面。借助于本發明的技術方案,能夠有效降低客戶端側的數據處理負擔,在響應速度快,流量消耗少的情況下,還能保證很好的渲染效果,同時支持所有的用戶操作,減輕了對用戶終端軟硬件的配置要求,給用戶提供了很好的上網環境,保證用戶的上網安全。
文檔編號H04L29/08GK102917074SQ20121044737
公開日2013年2月6日 申請日期2012年11月9日 優先權日2012年11月9日
發明者馬金韜 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司