【flask】session的操作

1,引入模块。

from flask import Flask,session
import os
from datetime import timedelta

2,随机生成24位的SECRET_KEY,因为flask要在客户端对cookie加密,所以要使用SECRET_KEY,使得对隐私数据实现加密。

app = Flask(__name__)
app.config['SECRET_KEY'] = os.urandom(24)

3,设置session的值,就像对字典的操作,是一样的。

session['username'] = 'xinjing2018'

4,获取session里面的值。通过使用get方法,比[]的方法好。

session['username']
session.get('username')

5,删除特定的session的值

session.pop('username')

6,清除session的值

session.clear()

7,设置过期时间为7天如下代码。如果都不设置的话,默认的过期时间是关闭浏览器就自动清除了cookie数据。如果只写session.permanent = True,那么过期时间默认是31天。

app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=7)
session.permanent = True

8,完整代码,通过访问对应的路由就可以查看对应的效果。

from flask import Flask,session
import os
from datetime import timedelta

app = Flask(__name__)
app.config['SECRET_KEY'] = os.urandom(24)
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=7)

@app.route('/')
def index():
    session['username'] = 'xinjing2018'
    session.permanent = True
    return 'Hello Flask'

@app.route('/get/')
def get():
    return session.get('username')

@app.route('/dels/')
def dels():
    print(session.get('username'))
    session.pop('username')
    print(session.get('username'))
    return 'dels done'

@app.route('/clear/')
def clear():
    print(session.get('username'))
    session.clear()
    print(session.get('username'))
    return 'clear done'

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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值