天天看點

一個簡單的web伺服器

新的一年了,新的開始,打算重新看一遍asp.net本質論這本書,再重新認識一下,查漏補缺,認認真真的過一遍。

首先需要引入命名空間: system.net,關于網絡程式設計的大部分類型及操作都可以在這個命名空間下找到。

ipaddress:類用來表示一個ip位址。

ipendpoint:用來表示一個ip位址和一個端口号的組合,稱為網絡的端點。

system.net.sockets:命名空間中提供了基于socket程式設計的資料類型。

socket類封裝了socket的操作。

常見操作:

listen:設定基于連接配接通信的socket進入監聽狀态,并設定等待隊列的長度。

accept:等待一個新的連接配接,當新連接配接到達的時候,傳回一個針對新連接配接的socket對象。通過這個新的socket對象,可以與新的連接配接通信。

receive:通過socket接收位元組資料,儲存到一個位元組數組中,傳回實際接收的位元組數。

send:通過socket發送預先儲存在位元組數組中的資料。

通過socket建立一個簡單的web伺服器,通過端口8888通路該伺服器,向浏覽器傳回一個靜态頁面。這個示例,通過浏覽器發送請求,并由伺服器生成消息響應給浏覽器。

web伺服器

一個簡單的web伺服器
一個簡單的web伺服器

啟動伺服器,并在浏覽器中輸入http://localhost:8888/

一個簡單的web伺服器

服務端收到的請求内容

一個簡單的web伺服器

通過搭建這個簡單的web伺服器,了解你在浏覽器輸入位址,然後回車,服務端是如何處理的以及如何響應的。

部落格位址:

<a href="http://www.cnblogs.com/wolf-sun">http://www.cnblogs.com/wolf-sun/</a>

部落格版權:

本文以學習、研究和分享為主,歡迎轉載,但必須在文章頁面明顯位置給出原文連接配接。

如果文中有不妥或者錯誤的地方還望高手的你指出,以免誤人子弟。如果覺得本文對你有所幫助不如【推薦】一下!如果你有更好的建議,不如留言一起讨論,共同進步!

再次感謝您耐心的讀完本篇文章。http://www.cnblogs.com/wolf-sun/p/5188994.html