五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Django學(xué)習(xí)筆記:cookies和session

2023-07-09 16:09 作者:星空收集者  | 我要投稿

Cookies:

信息在cookie里。

設(shè)置cookies

刪除和獲取cookies

其實刪除cookies說通過把過期時間設(shè)置成0(立刻過期)來實現(xiàn)

Seesion

session有賴于cookies機制而存在的,不同于Cookes,session的信息在服務(wù)器內(nèi)部

在django中說通過數(shù)據(jù)庫存儲。

cookie里存儲的說seesionid,服務(wù)器拿到sessionid后解析后才能獲取數(shù)據(jù)。

session在django項目中的配置:

session在django項目中的使用:

session在django中被封裝成字典,使用起來非常簡單,比cookies簡單很多。

session的配置:

具體來說是放在了django_seession這個表里

及時瀏覽器清除了cookie(session)或者session過期,但是服務(wù)器的session還是存在,不會主動去刪除,只有執(zhí)行python3 manage.py clearsessions才能刪除session的表中的過期數(shù)據(jù)內(nèi)容。

利用中間件,django讓session的操作變得十分簡單,但是本文作為學(xué)習(xí)筆記,有必要去探究一下sessions實現(xiàn),它是如何以來cookies進行工作的?

以登陸狀態(tài)保持(注:由于我使用的是基于django的藍鯨框架,sessionid名稱為XXX_bk_sessionid)為例:

當django中通過request.session['username']='shanshan'的時候。

1.用戶發(fā)送用戶賬號密碼到服務(wù)器,服務(wù)器驗證通過后,服務(wù)器會為該session生成一個sessionid:z60i0XXXX....XXXXjcogbf,在響應(yīng)頭里添加:Set-Cookie:sessionid=z60i0XXXX....XXXXjcogbf

響應(yīng)set-cookie

2.服務(wù)器在session數(shù)據(jù)庫(或者redis)里加入一條數(shù)據(jù):z60i0XXXX....XXXXjcogbf(具體id編號),“username=shanshan”字符串的加密編碼字符串(在登陸場景中session data一般是用戶名或者用戶id等個人內(nèi)容),expire(過期時間),而后發(fā)送響應(yīng)給客戶端。

數(shù)據(jù)庫添加session

當django中通過request.session.get('username')的時候,通過以下步驟獲取用戶信息username:shanshan。

3.客戶端的下次訪問將會帶上這個cookie(sessionid=z60i0XXXX....XXXXjcogbf),服務(wù)器端自動獲取名為sessionid的cookie,取出key為sessionid的session,把session的值“z60i0XXXX....XXXXjcogbf”取出后在數(shù)據(jù)庫(或者redis)中對比,得到用戶個人信息username=“shanshan”,由django的session中間件get后返回程序。由此,服務(wù)器就知道當前服務(wù)的對象是誰并且知道服務(wù)對象的session沒有過期,那么就不用返回登陸界面,直接返回用戶請求的內(nèi)容。

瀏覽器發(fā)送cookie自帶sessionid


以上我們以登陸為場景,結(jié)合cookie機制來具體解釋django對session的封裝原理,至此,完成了對session和cookie對基礎(chǔ)知識對學(xué)習(xí)。



Django學(xué)習(xí)筆記:cookies和session的評論 (共 條)

分享到微博請遵守國家法律
吉林省| 广州市| 静宁县| 龙海市| 辽阳县| 车险| 民权县| 砚山县| 盈江县| 临潭县| 甘洛县| 唐山市| 出国| 蕲春县| 乐亭县| 大城县| 双鸭山市| 苍山县| 大邑县| 宝山区| 澄迈县| 孝昌县| 南通市| 察隅县| 马山县| 肃北| 天长市| 彭州市| 昆山市| 芜湖市| 郴州市| 泽库县| 梁平县| 临桂县| 石泉县| 界首市| 章丘市| 汶上县| 乐昌市| 齐齐哈尔市| 瑞安市|