flash-session

1, session stored in the default browser in a cookie

Source

wsgi->app.__call__->wsgi_app->push->self.app.session_interface->session_interface = SecureCookieSessionInterface()->open_session和save_session

2. Change the session saved locations

a, download

pip3 install -i https://pypi.douban.com/simple flask-session

b, source code analysis

Session->self.init_app(app)->app.session_interface = self._get_interface(app)->session_interface

other

MemcachedSessionInterface
FileSystemSessionInterface
MongoDBSessionInterface
SqlAlchemySessionInterface

Specifically to see the source code

c, Example

import redis
from flask import Flask, session
# 1.导入模块
from flask_session import Session
# from flask.sessions import SecureCookieSession  # 原始
# from flask_session import RedisSessionInterface # 修改
app = Flask(__name__)

# app.session_interface = SecureCookieSessionInterface()
# app.session_interface = RedisSessionInterface()
# 2.修改配置文件
app.config['SESSION_TYPE'] = 'redis'
app.config['SESSION_REDIS'] = redis.Redis(host='ip', port=6379, password='密码')
# 3.注册
Session(app)


@app.route('/login')
def login():
    session['user'] = 'alex'
    return 'Hello'


@app.route('/home')
def index():
    print(session.get('user'))

    return 'World'


if __name__ == '__main__':
    app.run()

 

Guess you like

Origin www.cnblogs.com/wt7018/p/11605411.html