用django設(shè)置session過期時間的方法解析
session的超時時間設(shè)置
settings中
- SESSION_COOKIE_AGE=60*30 30分鐘。
- SESSION_EXPIRE_AT_BROWSER_CLOSE False:會話cookie可以在用戶瀏覽器中保持有效期。True:關(guān)閉瀏覽器,則Cookie失效。
- SESSION_COOKIE_DOMAIN 生效站點
- SESSION_COOKIE_NAME cookie中保存session的名稱
Session使用比較簡單,在request.session是一個字典類。session是保存在數(shù)據(jù)庫中的。
-------------------------------------------------------
按手冊和網(wǎng)上的方法在settings.py中設(shè)置“SESSION_COOKIE_AGE” 和 “SESSION_EXPIRE_AT_BROWSER_CLOSE” 均不生效。 通過查看django的源代碼"middleware.py"才知道這兩個參數(shù)只有在settings.SESSION_SAVE_EVERY_REQUEST為True時才有效。依此在settings.py中設(shè)置這個變量后問題解決。
從源代碼看SESSION_EXPIRE_AT_BROWSER_CLOSE為True時 SESSION_COOKIE_AGE 不生效。也就是說用戶只能二選一,在瀏覽器關(guān)閉時使session失效 或 超時失效。
--------------------------------------------------------------
下面這個方法不是在settings中用的
request.session.set_expiry(value)
你可以傳遞四種不同的值給它:
- 如果value是個整數(shù),session會在些秒數(shù)后失效(適用于整個Django框架,即這個數(shù)值時效時整個頁面都會session失效)。
- 如果value是個datatime或timedelta,session就會在這個時間后失效。
- 如果value是0,用戶關(guān)閉瀏覽器session就會失效。
- 如果value是None,session會依賴全局session失效策略。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python中的yield from語法快速學(xué)習(xí)
在本篇文章里小編給大家整理的是一篇關(guān)于python中的yield from語法快速學(xué)習(xí)相關(guān)內(nèi)容,有興趣的朋友們可以參考下。2020-11-11Pytorch實現(xiàn)網(wǎng)絡(luò)部分層的固定不進(jìn)行回傳更新問題及思路詳解
這篇文章主要介紹了Pytorch實現(xiàn)網(wǎng)絡(luò)部分層的固定不進(jìn)行回傳更新,實現(xiàn)思路就是利用tensor的requires_grad,每一個tensor都有自己的requires_grad成員,值只能為True和False,具體內(nèi)容詳情跟隨小編一起看看吧2021-08-08python深度學(xué)習(xí)借助多標(biāo)簽分類器進(jìn)行對抗訓(xùn)練
這篇文章主要為大家介紹了python深度學(xué)習(xí)中如何借助多標(biāo)簽分類器進(jìn)行對抗訓(xùn)練,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-01-01在Python中畫圖(基于Jupyter notebook的魔法函數(shù))
這篇文章主要介紹了在Python中畫圖(基于Jupyter notebook的魔法函數(shù)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-10-10