flask-session 在redis中存儲session


依賴:

Flask

Flask-Session

redis

 

import os
from flask import Flask, session, request
from flask_session import Session
from redis import Redis

app = Flask(__name__)
app.config['SESSION_TYPE'] = 'redis'   #session存儲格式為redis
app.config['SESSION_REDIS'] = Redis(    #redis的服務器參數
    host='192.168.1.3',                 #服務器地址
    port=6379)                           #服務器端口

app.config['SESSION_USE_SIGNER'] = True   #是否強制加鹽,混淆session
app.config['SECRET_KEY'] = os.urandom(24)  #如果加鹽,那么必須設置的安全碼,鹽
app.config['SESSION_PERMANENT'] = False  #sessons是否長期有效,false,則關閉瀏覽器,session失效
app.config['PERMANENT_SESSION_LIFETIME'] = 3600   #session長期有效,則設定session生命周期,整數秒,默認大概不到3小時。
Session(app)


@app.route('/')
def default():
    return session.get('key', 'not set')

@app.route('/test/')
def test():
    session['key'] = 'test'
    return 'ok'

@app.route('/set/')
def set():
    arg = request.args.get('key')
    print(arg)
    session['key'] = arg
    return 'ok'


@app.route('/get/')
def get():
    return session.get('key', 'not set')


@app.route('/pop/')
def pop():
    session.pop('key')
    return session.get('key', 'not set')


@app.route('/clear/')
def clear():
    session.clear()
    return session.get('key', 'not set')


if __name__ == "__main__":
    app.run(debug=True)

 

 

本例通過flask-session擴展,實現了把session存儲在redis服務器中。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM