5,658
社区成员
发帖
与我相关
我的任务
分享from flask import Flask, session
import os
from datetime import timedelta
app = Flask(__name__)
app.config.from_object('config')
app.config['SECRET_KEY'] = os.urandom(24)
# permanent 永久的意思 即使关闭浏览器依然存在 默认过期时间31天,
app.config["PERMANENT_SESSION_LIFETIME"] = timedelta(days=7)
# 添加数据到session中
# secret_key
# 设置session
@app.route('/')
def hello():
session['username'] = '0000'
# 如果没有指定session 的过期时间,默认浏览器关闭后就自动结束
session.permanent = True
return 'hello'
# 获取session
@app.route('/get')
def get():
return session.get('username')
案例:
# 删除session
@app.route('/delete')
def delete():
print(session.get('username'))
session.pop('username')
print(session.get('username'))
return 'success'
# 清除session
@app.route('/clear')
def clear():
print(session.get('username'))
session.clear()
print(session.get('username'))
return 'success'
if __name__ == '__main__':
app.run(debug=app.config['DEBUG'], port=99, host='0.0.0.0')werkzeug.security.generate_password_hash(password, method='pbkdf2:sha1', salt_length=8)
method$salt$hashwerkzeug.security.check_password_hash(pwhash, password)from werkzeug.security import generate_password_hash,check_password_hashclass User(object):
def __init__(self, username, password):
self.username = username
self.set_password(password)
def set_password(self, password):
self.pw_hash = generate_password_hash(password)
def check_password(self, password):
return check_password_hash(self.pw_hash, password)>>> me = User('John Doe', 'default')
>>> me.pw_hash
'sha1$Z9wtkQam$7e6e814998ab3de2b63401a58063c79d92865d79'
>>> me.check_password('default')
True
>>> me.check_password('defaultx')
False