HTTP伺服器專案過程

2021-09-27 14:13:48 字數 642 閱讀 9773

一、http 請求的解析

行的解析

頭的解析

二、http響應的組裝

行的組裝

頭的組裝

體的組裝

三、serversocket + socket 建立連線

四、靜態的controller

1.根據url獲取真實的檔案路徑

2.根據檔名字尾,獲取content—type

3.賦值檔案內容到response body中

1.得到request和response

2.得到url算出如果是靜態檔案,檔名是什麼?

3.如果檔案存在,當成靜態檔案處理,否則當成動態檔案處理

4.如果controller為空,說明既不是靜態也不是動態,404

5.否則,根據方法是get還是post,呼叫doget/dopost

如果是其他方法,405

1.提前解析好 web.xml

2.根據 url得到 controller名字

3.根據 controller名字得到 controller完整類名稱

4.利用自定義的類載入器,載入controller類

2.讀取檔案內容

3.呼叫defineclass變為class物件

5.利用反射,將該類例項化

專案二 HTTP伺服器

專案二 http伺服器 在學習servlet技術和使用tomcat之前,熟悉其底層基本原理。http伺服器採用請求 響應模式,即乙個請求對應乙個響應。本篇部落格將介紹該項目的基本思路,具體實現 可訪問博主的github 工欲善其事,必先利其器。需掌握 1 掌握http協議 2 掌握io流 3 網路程...

HTTP伺服器專案詳解

http 伺服器專案 功能 用到的技術 開發環境 注意 關於http的一些基礎知識我就不談了,有興趣可以自行了解 接下來,我就分模組的介紹一下我的專案吧 模組化介紹 socketapi 模組 入口處理模組 處理請求模組 響應處理模組 cgi 模組 執行緒池模組 專案的問題 web伺服器專案原始碼 因...

http伺服器與cgi互動過程

在處理cgi get 表單時,伺服器傳送給cgi程式是通過環境變數傳送的,並且get的表單內容存放在query string中,因此,在伺服器與cgi程式通訊之前,會先把get表單進行解析,並建立環境變數。同時,由於cgi程式是通過標準輸出向伺服器輸出資料,因此在通訊之前,還需要建立一條伺服器與cg...