一種WAP嵌入式瀏覽器的設計
1.2 網頁工作流程
數據從URL發出一個網頁請求,提交到通信模塊,通信模塊得到數據之后,交給數據處理模塊進行解析。生成DOM樹,然后布局模塊會根據DOM樹上的節點進行布局整理,同時將布局信息存儲到DOM樹中,最后繪圖模塊會對客戶端進行繪制。一般情況下,瀏覽器中看到的就是繪圖模塊的繪制效果。頁面訪問流程如圖3所示。
圖3 頁面訪問流程
在嵌入式瀏覽器設計時中考慮了C/S(Client/Server)結構,即客戶機和服務器結構。它是軟件系統體系結構,通過它可以充分利用兩端硬件環境的優勢,將任務合理分配到Client端和Server端來實現,降低了系統的通訊開銷。在此設計中,解析處理和文字布局均在server處理,最終顯示在client端。
2.1 解析處理
獲得WML文件之后,開始讀取WML文件,獲取字符,判斷是否是“”字符。如果是,就繼續判斷是否是標簽開始符。如果是起始標簽,獲取元素的屬性,比如屬性值和屬性名稱等,屬性由WML文檔的DTD定義。也就是程序自動判斷是文本格式、圖片格式、表格格式、還是其他格式,根據格式類型進行不同的解析。最后,將當前狀態以及參數值進行存儲,依次循環,直至循環結束,生成DOM樹。具體流程如圖4所示。
圖14 解析流程
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論