前面小節介紹了如何通過go搭建乙個web服務,我們可以看到簡單應用乙個net/http包就方便的搭建起來了。那麼go在底層到底是怎麼做的呢?萬變不離其宗,go的web服務工作也離不開我們第一小節介紹的web工作方式。
以下均是伺服器端的幾個概念
request:使用者請求的資訊,用來解析使用者的請求資訊,包括post、get、cookie、url等資訊
response:伺服器需要反饋給客戶端的資訊
handler:處理請求和生成返回資訊的處理邏輯
建立listen socket, 監聽指定的埠, 等待客戶端請求到來。
listen socket接受客戶端的請求, 得到client socket, 接下來通過client socket與客戶端通訊。
處理客戶端的請求, 首先從client socket讀取http請求的協議頭, 如果是post方法, 還可能要讀取客戶端提交的資料, 然後交給相應的handler處理請求, handler處理完畢準備好客戶端需要的資料, 通過client socket寫給客戶端。
這整個的過程裡面我們只要了解清楚下面三個問題,也就知道go是如何讓web執行起來了
前面小節的**裡
go如何使web工作
以下均是伺服器端的幾個概念 request 使用者請求的資訊,用來解析使用者的請求資訊,包括post get cookie url等資訊 response 伺服器需要反饋給客戶端的資訊 handler 處理請求和生成返回資訊的處理邏輯 建立listen socket,監聽指定的埠,等待客戶端請求到來...
Web是如何工作的
網路是如何工作的提供在計算機或 上的web瀏覽器中檢視網頁時發生的情況的簡化檢視。這一理論對於在短期內編寫web 並不重要,但不久之後,您將真正開始從了解在後台發生的事情中獲益。客戶端和伺服器 連線到web的計算機稱為客戶和伺服器。它們的互動方式的簡化圖可能如下所示 現在,讓我們想象一下,網路是一條...
一 Web 如何工作的
平常我們在瀏覽器中輸入乙個 隨即看到乙個頁面,這個過程是怎樣實現的呢?下面用一幅圖來說明 整個流程如下 1 網域名稱解析 瀏覽器會解析網域名稱對應的ip位址 ps dns伺服器的知識 2 建立tcp連線 拿到網域名稱對應的ip位址之後,瀏覽器會向伺服器的web程式發起tcp的連線請求。這個連線請求到...