2012-04-22 28 views
0

我有興趣在Linux系統下使用C和套接字庫(或任何其他庫)創建Web瀏覽器。如何製作一個將在C中顯示網頁的程序?

我的Web瀏覽器的基本用法是將網頁的HTML渲染爲用戶可讀的內容。

我只是想讓別人指向正確的方向。我也很瞭解套接字和他們的系統調用C ...

+2

你需要學習HTTP – SLaks 2012-04-22 17:50:42

+0

嘗試獲取和閱讀山貓源代碼。 (山貓是基於ASCII的網絡瀏覽器) – wildplasser 2012-04-22 17:52:06

+0

可以使用像G-萬服務器編寫C的servlet:http://gwan.ch/ – thwd 2012-04-22 17:54:18

回答

2

指針在正確的方向,呃?

那麼,一個網頁瀏覽器由一大堆系統一起工作組成;即使是最基本的網絡瀏覽器,也絕對不能理解HTTP/1.1和HTML。

它必須能夠獲取來自遠程服務器的網頁,解析HTML到DOM,渲染到視口,捕捉鼠標的點擊,讓他們激活超鏈接,並導航到新的頁面。

但是,如果只能做到這一點,這是一個網頁瀏覽器的糟糕藉口;即使最簡單的Web瀏覽器也應該能夠解析和應用CSS;顯示JPEG,PNG和BMP圖像,解析XML,執行JavaScript,處理Cookie,離線存儲,插件(如Flash)以及大約一百萬個其他事物。

當然,我試圖做的一點是,網絡瀏覽器在很多方面都是學習做軟件項目的糟糕項目,因爲甚至與基本功能相關的開銷也很大。

+0

web瀏覽器就像是一個虛擬機。 – UmNyobe 2012-04-22 18:40:29

+0

@UmNyobe:我想這不是一個糟糕的比喻。 – 2012-04-22 19:21:25

相關問題