類型
web框架有兩種類型,一種是mvc類型,一種是mtv類型
MVC:model view control類型
MTV: model templates view control 類型
作用
一般情況下,瀏覽器和服務(wù)器之間的一次請求和回應(yīng)傳輸會經(jīng)過以下幾個步驟
- 瀏覽器通過socket將請求數(shù)據(jù)發(fā)送給web服務(wù)器軟件
- web服務(wù)器軟件收到數(shù)據(jù)進行解析,解析規(guī)則按照http協(xié)議進行解析、組裝并打包成一個對象,發(fā)送給后臺web應(yīng)用
- web應(yīng)用就是核心內(nèi)容,收到對象后進行提取數(shù)據(jù)和處理數(shù)據(jù),決定發(fā)送回應(yīng)的內(nèi)容
- 確定好回應(yīng)內(nèi)容之后,將數(shù)據(jù)再交給web服務(wù)器應(yīng)用
- web服務(wù)器應(yīng)用對web應(yīng)用發(fā)來的響應(yīng)數(shù)據(jù)通過http協(xié)議進行組裝和打包,解析成瀏覽器可以識別的內(nèi)容,發(fā)送給瀏覽器
- 瀏覽器進行渲染和呈現(xiàn)響應(yīng)數(shù)據(jù)
wsgiref模塊
web服務(wù)器應(yīng)用提供了一個接口,這個接口是WSGI,且指定了一系列規(guī)范,一般情況下使用阿帕奇或者nginx,但是在沒有這些軟件的情況下,可以通過Python的wsgiref(wsgi是接口,實現(xiàn)它是wsgiref模塊)模塊來實現(xiàn),由于涉及到網(wǎng)絡(luò)傳輸,wsgire肯定會包含socket內(nèi)容
Django框架
Django框架是Python將wsgiref模塊以及web應(yīng)用里面必須要寫的一些重復(fù)邏輯和步驟進行了封裝,形成一個框架,使用Django框架只需要關(guān)心后臺數(shù)據(jù)的出理就行了,不用再關(guān)心傳輸層面的東西。