使用django怎么設(shè)置session過期時間?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
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)容,你們掌握使用django怎么設(shè)置session過期時間的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前標(biāo)題:使用django怎么設(shè)置session過期時間-創(chuàng)新互聯(lián)
地址分享:http://chinadenli.net/article12/dcjgdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、App開發(fā)、電子商務(wù)、網(wǎng)站制作、Google、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容