在 Flask 中拥有服务器端 session 变量的最简单方法是什么?
Variable value:
- A simple string
- Not visible to the client (browser)
- Not persisted to a DB -- simply vanishes when the session is gone
有一个内置的 Flask session ,但是它将 session 数据发送给客户端:
session["secret"] = "I can see you"
数据经过 Base64 编码并在加密签名的 cookie 中发送,但在客户端读取仍然很容易。
在许多框架中,创建服务器端 session 变量是一行代码,例如:
session.secret = "You can't see this"
到目前为止,我发现的 Flask 解决方案非常笨重,并且适合处理大块数据。有没有简单的轻量级解决方案?
请您参考如下方法:
我认为 Flask-Session扩展名正是您要找的。
Flask-Session is an extension for Flask that adds support for Server-side Session to your application.
来自链接的网站:
from flask import Flask, session
from flask_session import Session # new style
# from flask.ext.session import Session # old style
app = Flask(__name__)
# Check Configuration section for more details
SESSION_TYPE = 'redis'
app.config.from_object(__name__)
Session(app)
@app.route('/set/')
def set():
session['key'] = 'value'
return 'ok'
@app.route('/get/')
def get():
return session.get('key', 'not set')
