1. 程式人生 > >django(1)、生命周期與請求的本質

django(1)、生命周期與請求的本質

繼續 n) 客戶端 時間段 返回 ddn 生命周期 視圖 socket客戶端

請求的本質

  • CS架構:本質上django程序就是一個socket服務端,瀏覽器其實就是一個socket客戶端;
  • django自帶的 wsgi 模塊處理瀏覽器的請求信息,用戶只需要實現路由和視圖函數、模板等代碼部分。

django請求的生命周期

指當用戶在瀏覽器上輸入url到用戶看到網頁的這個時間段內,Django程序內部所發生的事情。

具體步驟如下:

  • 1、當用戶在瀏覽器中輸入url時,瀏覽器會生成請求頭和請求體發給服務端,請求頭和請求體中會包含瀏覽器的動作(action),這個動作通常為GET或者POST,體現在url之中;
  • 2、url經過Django中的wsgi,再經過Django的中間件,最後url到過路由映射表,在路由中一條一條進行匹配,一旦其中一條匹配成功就執行對應的視圖函數,後面的路由就不再繼續匹配了;
  • 3、視圖函數根據客戶端的請求查詢相應的數據並返回給Django,然後Django把客戶端想要的數據做為一個字符串返回給客戶端;
  • 4、客戶端瀏覽器接收到返回的數據,經過渲染後顯示給用戶.

流程示意圖:
技術分享圖片

django(1)、生命周期與請求的本質