1.什么是wsgi,uwsgi,uWSGI昧港?
wsgi:web服務(wù)器網(wǎng)關(guān)接口,是一套協(xié)議搞监,用于接收用戶請(qǐng)求并將請(qǐng)求進(jìn)行初次封裝仁连,然后將請(qǐng)求交給web框架。
uwsgi:與wsgi一樣是一種通信協(xié)議昌罩,用于定義傳輸信息的類型
uWSGI:是一個(gè)Web服務(wù)器哭懈,實(shí)現(xiàn)WSGI協(xié)議,uWSGI茎用、http協(xié)議遣总。
2.生命周期
wsgi,請(qǐng)求封裝后交給web框架
中間件:對(duì)請(qǐng)求進(jìn)行校驗(yàn)或在請(qǐng)求對(duì)象中添加其他數(shù)據(jù)
路由配置:根據(jù)url匹配不同的視圖函數(shù)
視圖函數(shù):在視圖函數(shù)中進(jìn)行業(yè)務(wù)邏輯處理
中間件:對(duì)響應(yīng)的數(shù)據(jù)進(jìn)行處理
wsgi:將響應(yīng)的內(nèi)容發(fā)送給瀏覽器
3.簡(jiǎn)述FBV和CBV
FBV:基于函數(shù)的視圖
CBV:基于類的視圖
CBV的優(yōu)點(diǎn):提高代碼的復(fù)用性,可以使用面向?qū)ο蟮募夹g(shù)轨功,如多繼承(Mixin)旭斥。提高代碼的可讀性,可以用不同的函數(shù)針對(duì)不同的HTTP請(qǐng)求古涧。
4.路由中name的作用
1.反向解析路由
2.修改路由格式時(shí)琉预,不至于修改所有引用的地方
5.中間件的作用和場(chǎng)景
在視圖函數(shù)執(zhí)行前后都可以做一些額外的操作。
如:默認(rèn)csrf保護(hù)蒿褂,發(fā)送請(qǐng)求時(shí)判斷用戶是否登錄以及是否在黑名單中