国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Django操作session 的方法

瀏覽:9日期:2024-10-22 17:57:38

session是存放在服務(wù)端的,在django中使用session必須要先在數(shù)據(jù)庫中創(chuàng)建django_session表,session相關(guān)信息都要依賴此表

獲取session

request.session[’status’]request.session.get(’status’)#一般用get,無此鍵返回None不報(bào)錯(cuò)

設(shè)置session

#在使用session之前必須在數(shù)據(jù)庫創(chuàng)建相關(guān)的表(django_session)

#調(diào)用request.session首先會(huì)接收請求頭部的cookie是否有sessionid,進(jìn)行表查詢對比

#如果有重新生成一個(gè)sessionid進(jìn)行覆蓋更新記錄,并將隨機(jī)生成的sessionid添加到cookie返回前端

# 沒有則新建存進(jìn)表中的session_key,同時(shí)將字典信息加密自動(dòng)存進(jìn)表中的session_data字段

request.session[’status’]=True # 存在自動(dòng)覆蓋

request.session.setdefault(’k1’,123) # 存在則不設(shè)置

刪除session

request.session.flush()#刪除服務(wù)端的session,刪除當(dāng)前的會(huì)話數(shù)據(jù)并刪除會(huì)話的Cookie。

request.session.clear_expired()# 將所有Session失效日期小于當(dāng)前日期的數(shù)據(jù)刪除,將過期的刪除

del request.session[’k1’]#django-session表里面同步刪除

request.session.delete()# 刪除當(dāng)前會(huì)話的所有Session數(shù)據(jù)

更多session操作

# 所有 鍵、值、鍵值對

request.session.keys()

request.session.values()

request.session.items()

#獲取sessionid的值

session_key = request.session.session_key

#檢查會(huì)話session的key在數(shù)據(jù)庫中是否存在

request.session.exists('session_key') #session_key就是那個(gè)sessionid的值

# 設(shè)置會(huì)話Session和Cookie的超時(shí)時(shí)間

request.session.set_expiry(value)

* 如果value是個(gè)整數(shù),session會(huì)在些秒數(shù)后失效。

* 如果value是個(gè)datatime或timedelta,session就會(huì)在這個(gè)時(shí)間后失效。

* 如果value是0,用戶關(guān)閉瀏覽器session就會(huì)失效。

* 如果value是None,session會(huì)依賴全局session失效策略。

Session詳細(xì)流程解析

Django操作session 的方法

Django中的Session配置

Django中默認(rèn)支持Session,其內(nèi)部提供了5種類型的Session供開發(fā)者使用。

1. 數(shù)據(jù)庫Session

SESSION_ENGINE = ’django.contrib.sessions.backends.db’ # 引擎(默認(rèn))

2. 緩存Session

SESSION_ENGINE = ’django.contrib.sessions.backends.cache’ # 引擎SESSION_CACHE_ALIAS = ’default’ # 使用的緩存別名(默認(rèn)內(nèi)存緩存,也可以是memcache),此處別名依賴緩存的設(shè)置

3. 文件Session

SESSION_ENGINE = ’django.contrib.sessions.backends.file’ # 引擎SESSION_FILE_PATH = None # 緩存文件路徑,如果為None,則使用tempfile模塊獲取一個(gè)臨時(shí)地址tempfile.gettempdir()

4. 緩存+數(shù)據(jù)庫

SESSION_ENGINE = ’django.contrib.sessions.backends.cached_db’ # 引擎

5. 加密Cookie Session

SESSION_ENGINE = ’django.contrib.sessions.backends.signed_cookies’ # 引擎

其他公用設(shè)置項(xiàng):

SESSION_COOKIE_NAME = 'sessionid' # Session的cookie保存在瀏覽器上時(shí)的key,即:sessionid=隨機(jī)字符串(默認(rèn))SESSION_COOKIE_PATH = '/'# Session的cookie保存的路徑(默認(rèn))SESSION_COOKIE_DOMAIN = None # Session的cookie保存的域名(默認(rèn))SESSION_COOKIE_SECURE = False # 是否Https傳輸cookie(默認(rèn))SESSION_COOKIE_HTTPONLY = True # 是否Session的cookie只支持http傳輸(默認(rèn))SESSION_COOKIE_AGE = 1209600 # Session的cookie失效日期(2周)(默認(rèn))SESSION_EXPIRE_AT_BROWSER_CLOSE = False # 是否關(guān)閉瀏覽器使得Session過期(默認(rèn))SESSION_SAVE_EVERY_REQUEST = False # 是否每次請求都保存Session,默認(rèn)修改之后才保存(默認(rèn))

總結(jié)

到此這篇關(guān)于Django操作session 的方法的文章就介紹到這了,更多相關(guān)django操作session 內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 日本免费不卡在线一区二区三区 | 亚洲高清无在码在线无弹窗 | 国产杨幂福利在线视频观看 | 日韩毛片久久91 | 全部免费国产潢色一级 | 精品日韩欧美一区二区三区 | 国产91久久精品 | 欧美一级久久久久久久大 | 久久在线影院 | 久久精品视频亚洲 | 一级毛片美国aaj毛片 | 九九看片| 在线观看偷拍视频一区 | 国产精品午夜波多野结衣性色 | 亚洲精品二区 | 秋霞手机入口二日韩区 | 欧美叫床戏做爰无遮挡 | 毛片观看网址 | 久久大胆视频 | 亚洲成人欧美 | 欧美一级一极性活片免费观看 | 国内精品久久久久久影院8f | 国产成人精品综合久久久软件 | 国产主播福利片在线观看 | a男人的天堂久久a毛片 | 国产精品亚洲一区二区三区在线观看 | 久久久久久久久久免观看 | 一个人看的日本免费视频 | 久草手机视频在线观看 | 亚洲综合久久综合激情久久 | 国产三级a三级三级天天 | 99爱在线观看精品视频 | 女人张开双腿让男人桶完整 | 一级特级毛片 | 日本特黄特色视频 | 国产亚洲午夜精品a一区二区 | 国产精品手机在线观看 | 欧美一区二区日韩一区二区 | 在线播放成人高清免费视频 | 特大一级aaaaa毛片 | 九九久久国产 |