go web執行流程

2022-09-23 04:12:02 字數 1097 閱讀 8142

客戶機通過tcp/ip協議建立到伺服器的tcp連線

客戶端向伺服器傳送http協議請求包,請求伺服器裡的資源文件

伺服器向客戶機傳送http協議應答包,如果請求的資源包含有動態語言的內容,那麼伺服器會呼叫動態語言的解釋引擎負責處理“動態內容”,並將處理得到的資料返回給客戶端

客戶機與伺服器斷開。由客戶端解釋html文件,在客戶端螢幕上渲染圖形結果

首先呼叫http.handlefunc

(1.)按順序做了幾件事:

1 呼叫了defaultservemux的handlefunc

2 呼叫了defaultservemux的handle

3 往defaultservemux的map[string]muxentry中增加對應的handler和路由規則

(2.)其次呼叫http.listenandserve(":9090", nil)

按順序做了幾件事情:

1 例項化server

2 呼叫server的listenandserve()

3 呼叫net.listen("tcp", addr)監聽埠

4 啟動一個for迴圈,在迴圈體中accept請求

5 對每個請求例項化一個conn,並且開啟一個goroutine為這個請求進行服務go c.serve()

6 讀取每個請求的內容w, err := c.readrequest()

7 判斷handler是否為空,如果沒有設定handler(這個例子就沒有設定handler),handler就設定為defaultservemux

8 呼叫handler的servehttp

9 在這個例子中,下面就進入到defaultservemux.servehttp

10 根據request選擇handler,並且進入到這個handler的servehttp

mux.handler(r).servehttp(w, r)

11 選擇handler:

a 判斷是否有路由能滿足這個request(迴圈遍歷servemux的muxentry)

b 如果有路由滿足,呼叫這個路由handler的servehttp

c 如果沒有路由滿足,呼叫notfoundhandler的servehttp

Go Web URLs

url也是一個結構體 type url structurl結構表示解析之後的url,一般格式為 scheme userinfo host p...

web的基本流程

通過http協議,前後端進行資料互動。本質就是socket服務端與瀏覽器的通訊。基本形式是前端向目標地址發起請求,後端收到後從請求首行中獲取...

web測試流程

1 立項後測試需要拿到文件 需求說明書,原型圖,介面文件, 2 需求評審 3 用例編寫 主流程,備流程,異常流,業務規則,正常類,異常類,頁面檢查 測試用例編寫方法 等價類劃分,邊界值分析法,錯誤推斷法,因果圖分析法,場景法 4 用例評審 5 測試執行 冒煙測試 針對某個模組出現較多問題是,打回給開...