如何在flask中操作session
首先我們加入一個session
from flask import Flask,session
app = Flask(__name__)
@app.route('/')
def hello_world():
session['username']='gao'
return 'Hello World!'
@app.route('/get/')
def get():
return session.get('username')
if __name__ == '__main__':
app.run(debug=True)
在瀏覽器運行一下:報錯:
需要我們設(shè)置
Set the secret_key on the application to something unique and secret.
在代碼中加入:
app.config['SECRET_KEY']= os.urandom(24)
再次運行:
from flask import Flask,session
import os
app = Flask(__name__)
app.config['SECRET_KEY']= os.urandom(24)
@app.route('/')
def hello_world():
session['username']='gao'
return 'Hello World!'
@app.route('/get/')
def get():
return '當(dāng)前的cookie值為username:'+session.get('username')
if __name__ == '__main__':
app.run(debug=True)
刪除cookie的操作代碼是:
session.pop('key')
清除cookie的操作代碼是:
session.clear()
設(shè)置cookie的過期時間
設(shè)置cookie的過期時間這一點是非常有必要的呜叫,設(shè)置好過期時間比如七天后,在七天內(nèi),用戶可以免登錄訪問服務(wù)器驳棱,如果超過七天就需要重新輸入用戶名和密碼 再次登錄。
from flask import Flask,session
import os
from datetime import timedelta
app = Flask(__name__)
app.config['SECRET_KEY']= os.urandom(24)
app.config['PERNAMENT_SESSION_LIFETIEM']=timedelta(days=7)
@app.route('/')
def hello_world():
session['username']='gao'
#如果沒有設(shè)置過期時間,系統(tǒng)默認為關(guān)閉瀏覽器即過期
#設(shè)置過期時間,系統(tǒng)默認當(dāng)session.permanent = True時是31天友多,如果想要更改為自己想要的時間需要加入app.config['PERNAMENT_SESSION_LIFETIEM']=timedelta(days=7)
session.permanent = True
return 'Hello World!'
@app.route('/get/')
def get():
return '當(dāng)前的cookie值為username:'+session.get('username')
if __name__ == '__main__':
app.run(debug=True)