国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種瀏覽器內(nèi)核切換的方法

      文檔序號:6336418閱讀:1630來源:國知局
      專利名稱:一種瀏覽器內(nèi)核切換的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及瀏覽器應用領(lǐng)域,特別是一種瀏覽器內(nèi)核切換方法。
      背景技術(shù)
      瀏覽器作為網(wǎng)站的瀏覽工具,其擁有龐大的用戶群,幾乎每一個需要上網(wǎng)的機器都需要使用瀏覽器瀏覽網(wǎng)頁。微軟公司的IE瀏覽器憑借強大的慣性和與操作系統(tǒng)的綁定,使其占據(jù)著最主流的市場份額。所有研究IE并試圖在瀏覽器領(lǐng)域有所作為的企業(yè),無一例外地首先把矛頭對準IE的Trident內(nèi)核設計。但是由于IE內(nèi)核在設計方面存在先天不足,IE 一直沒能解決的問題很多,這其中包括假死、程序崩潰,載入時間過長等問題。開源瀏覽器內(nèi)核webtik便是在這樣的環(huán)境下而生,包括Google在內(nèi)的多家其他瀏覽器均采用了這一技術(shù)。不過相對于IE內(nèi)核多年的兼容性測試來說,webtik盡管在速度、穩(wěn)定性等多個方面表現(xiàn)出優(yōu)勢,但在兼容性方面卻有一定問題。因此很多瀏覽器采用“雙核”的方式提升瀏覽器的訪問網(wǎng)頁速度。所謂“雙核”, 實際上就是同時基于W^ebKit和Trident兩種內(nèi)核,既能享受W^ebKit的高速,又能兼顧 Trident的兼容性。傳統(tǒng)的“雙核”瀏覽器一般采用兼容模式列表使得瀏覽器能夠分辨當前要訪問的頁面需要什么內(nèi)核。兼容模式列表或急速模式列表一般非常龐大,不易維護;如果要瀏覽的網(wǎng)站涉及到跳轉(zhuǎn)到僅支持Trident內(nèi)核的頁面時就會出現(xiàn)異常,因此這類瀏覽器在遇到類似的問題時則直接將有可能跳轉(zhuǎn)到僅支持Trident內(nèi)核的頁面的網(wǎng)站使用Trident內(nèi)核訪問。這樣雖然避免出現(xiàn)異常,但是卻使得頁面訪問速度大為降低,影響了用戶使用。

      發(fā)明內(nèi)容
      有鑒于此,為解決上述問題,本發(fā)明提供了一種瀏覽器內(nèi)核切換的方法。為了達到上述目的,本發(fā)明提供一種瀏覽器內(nèi)核切換的方法,其用于使瀏覽器針對不同頁面使用不同瀏覽器內(nèi)核,具體包括以下步驟瀏覽器判斷加載當前頁面是否需要切換內(nèi)核;當瀏覽器加載需要切換內(nèi)核的頁面時,將第一內(nèi)核中的post數(shù)據(jù)傳遞給切換使用的第二內(nèi)核中;由第二內(nèi)核將post數(shù)據(jù)返回給網(wǎng)頁服務器。優(yōu)選地,所述post數(shù)據(jù)傳遞的步驟進一步包括瀏覽器通過瀏覽器內(nèi)核的接口獲得第一內(nèi)核中的post數(shù)據(jù)。優(yōu)選地,當所述瀏覽器跳轉(zhuǎn)到支付網(wǎng)站并加載時需要切換內(nèi)核。優(yōu)選地,所述瀏覽器還通過互聯(lián)網(wǎng)于瀏覽器管理服務器進行數(shù)據(jù)交互,所述方法進一步包括所述瀏覽器管理服務器獲得用戶在使用瀏覽器的過程中需要切換內(nèi)核的操作,生成內(nèi)核切換列表;所述瀏覽器在執(zhí)行判斷加載當前頁面是否需要切換內(nèi)核步驟時,查詢所述內(nèi)核切換列表,并根據(jù)查詢結(jié)果確定是否需要切換內(nèi)核。優(yōu)選地,所述內(nèi)核切換列表的生成方法包括當用戶在使用第一內(nèi)核進行頁面跳
      3轉(zhuǎn)失敗且采用第二內(nèi)核進行頁面跳轉(zhuǎn)成功時,所述瀏覽器記錄下這一操作,并將這一操作上傳至瀏覽器管理服務器上;所述瀏覽器管理服務器將這一跳轉(zhuǎn)操作記錄,當再有用戶進行同樣的跳轉(zhuǎn)操作時令瀏覽器進行內(nèi)核切換操作。本發(fā)明提供的實施例通過傳遞表單的方法將第一內(nèi)核數(shù)據(jù)提交給第二內(nèi)核處理, 實現(xiàn)了雙核切換。


      圖1是本發(fā)明一個具體的實施例中瀏覽器內(nèi)核切換的方法流程圖。
      具體實施例方式瀏覽器最核心的部分是渲染引擎(Rendering Engine),我們一般習慣稱之為“瀏覽器內(nèi)核”,其負責解析網(wǎng)頁語法(如HTML、JavaScript)并渲染、展示網(wǎng)頁。因此,所謂的瀏覽器內(nèi)核通常也就是指瀏覽器所采用的渲染引擎,渲染引擎決定了瀏覽器如何顯示網(wǎng)頁的內(nèi)容以及頁面的格式信息。不同的瀏覽器內(nèi)核對網(wǎng)頁編寫語法的解析也有所不同,因此同一網(wǎng)頁在不同的內(nèi)核瀏覽器里的渲染、展示效果也可能不同。常見的瀏覽器內(nèi)核包括(I)TridentTrident (又稱為MSHTML),是微軟的Windows搭載的網(wǎng)頁瀏覽器——Internet Explorer瀏覽器使用的內(nèi)核(俗稱IE內(nèi)核),該內(nèi)核程序在1997年的IE 4中首次被采用,之后不斷地加入新的技術(shù)并隨著新版本的IE發(fā)布。Trident實際上是一款開放的內(nèi)核, Trident引擎被設計成一個軟件組件(模塊),使得其他軟件開發(fā)人員很容易將網(wǎng)頁瀏覽功能加到他們自行開發(fā)的應用程序里,其接口內(nèi)核設計相當成熟,因此涌現(xiàn)出許多采用IE內(nèi)核而非IE的瀏覽器,但是Trident只能用于Windows平臺。由于IE本身的“壟斷性”而使得Trident內(nèi)核在很長時間內(nèi)都是一家獨大,微軟也在相當長一段時間內(nèi)都沒有更新Trident內(nèi)核,這就導致了兩個后果——一是Trident內(nèi)核曾經(jīng)幾乎與W3C標準脫節(jié);二是Trident內(nèi)核的大量Bug等安全性問題沒有得到及時解決。目前,微軟對Trident排版引擎做了重大變動,除了加入新的技術(shù)之外,還增加了對網(wǎng)頁標準的支持。盡管這些變動已經(jīng)在相當大的程度上落后了其他的排版引擎。(2) GeckoGecko是開放源代碼、以C++編寫的網(wǎng)頁排版引擎,目前被Mozilla家族網(wǎng)頁瀏覽器以及Netscape 6以后版本瀏覽器所使用。由于Gecko的特點是代碼完全公開,因此,其可開發(fā)程度很高,全世界的程序員都可以為其編寫代碼,增加功能。Gecko排版引擎提供了一個豐富的程序界面以供與互聯(lián)網(wǎng)相關(guān)的應用程序使用, 例如網(wǎng)頁瀏覽器、HTML編輯器、客戶端/服務器等。此外Gecko也是一個跨平臺內(nèi)核,可以在 Windows、BSD、Linux 禾口 Mac OS X 中使用。(3) PrestoPresto是一個由Opera Software開發(fā)的瀏覽器排版引擎。I^resto的特點就是渲染速度的優(yōu)化達到了極致,它是目前公認的網(wǎng)頁瀏覽速度最快的瀏覽器內(nèi)核,然而代價是犧牲了網(wǎng)頁的兼容性。
      Presto實際上是一個動態(tài)內(nèi)核,與Trident、GeCk0等內(nèi)核的最大區(qū)別就在于腳本處理上,Presto有著天生的優(yōu)勢,頁面的全部或者部分都能夠在回應腳本事件時等情況下被重新解析。(4) WebKitWebKit是一個開放源代碼的瀏覽器引擎(Web Browser Engine),W^ebKit最初的代碼來自KDE的KHTML和KJS (它們均為開放源代碼,都是自由軟件,在GPL協(xié)議下授權(quán))。 所以WebKit也是自由軟件,同時開放源代碼。目前很多雙核技術(shù)基本都是采用Trident內(nèi)核+WebKit內(nèi)核的形式,單純地采用第一內(nèi)核訪問第一頁面并用第二內(nèi)核訪問第二頁面并不會有問題。但是如果第一內(nèi)核訪問的第一頁面需要跳轉(zhuǎn)到第二頁面時,采用第二內(nèi)核加載頁面時就會出現(xiàn)載入失敗的情況。 經(jīng)過分析瀏覽器內(nèi)核間數(shù)據(jù)發(fā)現(xiàn),在瀏覽器切換內(nèi)核時,由于post表單數(shù)據(jù)沒有傳遞過來導致失敗。最普遍的情況是購物網(wǎng)站切換到支付網(wǎng)站的情況。由于支付網(wǎng)站往往為了安全、 穩(wěn)定和兼容的需要,非常依賴Trident內(nèi)核,而使用其他內(nèi)核在跳轉(zhuǎn)時會導致錯誤,而如果在購物網(wǎng)站使用WebKIt內(nèi)核而在支付網(wǎng)站使用Trident內(nèi)核也會導致錯誤。因此針對現(xiàn)有技術(shù)中雙核切換會帶來的問題,本發(fā)明提供一種瀏覽器內(nèi)核切換的方法。具體請參看圖1所示,本發(fā)明提供的方法包括以下步驟。步驟101,瀏覽器判斷加載當前頁面是否需要切換內(nèi)核;步驟102,當瀏覽器加載需要切換內(nèi)核的頁面時,將第一內(nèi)核中的post數(shù)據(jù)傳遞給切換使用的第二內(nèi)核中;步驟103,由第二內(nèi)核將post數(shù)據(jù)返回給網(wǎng)頁服務器。在一個具體的實施例中,瀏覽器默認狀態(tài)下使用高速的WebKit內(nèi)核,而當瀏覽器跳轉(zhuǎn)到支付網(wǎng)站并加載時,切換到Trident內(nèi)核。瀏覽器通過接口獲得WebKit內(nèi)核下的 post數(shù)據(jù),并將post數(shù)據(jù)傳遞給Trident內(nèi)核,由Trident內(nèi)核將接收到的post數(shù)據(jù)返回給網(wǎng)頁服務器。在另一個具體的實施例中,所述瀏覽器判斷加載當前頁面是否需要切換內(nèi)核的方法采用維護內(nèi)核切換列表的方法。所述內(nèi)核切換列表記錄需要從第一內(nèi)核切換使用第二內(nèi)核的頁面跳轉(zhuǎn)情況。所述頁面跳轉(zhuǎn)情況優(yōu)選地由瀏覽器用戶的使用情況統(tǒng)計產(chǎn)生。當用戶在使用第一內(nèi)核進行頁面跳轉(zhuǎn)失敗且采用第二內(nèi)核進行頁面跳轉(zhuǎn)成功時,所述瀏覽器記錄下這一操作情況,并將這一操作情況上傳至瀏覽器管理服務器上。所述瀏覽器管理服務器將這一跳轉(zhuǎn)操作記錄,當再有用戶進行同樣的跳轉(zhuǎn)操作時令瀏覽器進行內(nèi)核切換操作。所述瀏覽器管理服務器將所有瀏覽器用戶的使用情況匯總,可以生成所述內(nèi)核切換列表。所述瀏覽器在進行頁面跳轉(zhuǎn)時查詢所述內(nèi)核切換列表,可以得知是否需要切換瀏覽器內(nèi)核。本發(fā)明采用雙核切換的方法既可以利用WebKit內(nèi)核的快速處理頁面能力使瀏覽購物頁面更為快捷,同時又將跳轉(zhuǎn)到支付頁面的post數(shù)據(jù)發(fā)送到Trident內(nèi)核中,使支付過程能夠順利完成,提高了用戶的使用感受。
      雖然本發(fā)明是W^febKit內(nèi)核切換到Trident內(nèi)核為例說明的,但本發(fā)明的思想并不局限在上述內(nèi)核切換的過程當中。所有內(nèi)核切換時傳遞post數(shù)據(jù)的方法均應落入本發(fā)明保護的范圍。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換等,均應包含在本發(fā)明的保護范圍之內(nèi)。
      權(quán)利要求
      1.一種瀏覽器內(nèi)核切換的方法,其用于使瀏覽器針對不同頁面使用不同瀏覽器內(nèi)核, 具體包括以下步驟瀏覽器判斷加載當前頁面是否需要切換內(nèi)核;當瀏覽器加載需要切換內(nèi)核的頁面時,將第一內(nèi)核中的post數(shù)據(jù)傳遞給切換使用的第二內(nèi)核中;由第二內(nèi)核將post數(shù)據(jù)返回給網(wǎng)頁服務器。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述post數(shù)據(jù)傳遞的步驟進一步包括瀏覽器通過瀏覽器內(nèi)核的接口獲得第一內(nèi)核中的post數(shù)據(jù)。
      3.根據(jù)權(quán)利要求1所述的方法,其特征在于,當所述瀏覽器跳轉(zhuǎn)到支付網(wǎng)站并加載時需要切換內(nèi)核。
      4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述瀏覽器還通過互聯(lián)網(wǎng)于瀏覽器管理服務器進行數(shù)據(jù)交互,所述方法進一步包括所述瀏覽器管理服務器獲得用戶在使用瀏覽器的過程中需要切換內(nèi)核的操作,生成內(nèi)核切換列表;所述瀏覽器在執(zhí)行判斷加載當前頁面是否需要切換內(nèi)核步驟時,查詢所述內(nèi)核切換列表,并根據(jù)查詢結(jié)果確定是否需要切換內(nèi)核。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述內(nèi)核切換列表的生成方法包括當用戶在使用第一內(nèi)核進行頁面跳轉(zhuǎn)失敗且采用第二內(nèi)核進行頁面跳轉(zhuǎn)成功時,所述瀏覽器記錄下這一操作,并將這一操作上傳至瀏覽器管理服務器上;所述瀏覽器管理服務器將這一跳轉(zhuǎn)操作記錄,當再有用戶進行同樣的跳轉(zhuǎn)操作時令瀏覽器進行內(nèi)核切換操作。
      全文摘要
      本發(fā)明提供一種雙核切換的方法,用于瀏覽器在瀏覽網(wǎng)頁時在不同瀏覽器內(nèi)核之間切換,其包括以下步驟瀏覽器檢測是否需要切換內(nèi)核;加載需要切換內(nèi)核的頁面時將前一個內(nèi)核中的post數(shù)據(jù)傳遞給切換到的內(nèi)核中。
      文檔編號G06F17/30GK102467565SQ20101055255
      公開日2012年5月23日 申請日期2010年11月19日 優(yōu)先權(quán)日2010年11月19日
      發(fā)明者田亮 申請人:奇智軟件(北京)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1