flask-cookie & session

Cookie

@app.route('/')
def hello_world():
   name=request.cookies.get('Name')  # 获取cookie resp
= Response("fdsaf") # 要相对北京时间少8个小时 expires = datetime.now() + timedelta(days=30,hours=16) # 在新版本的http协议中,expires参数视为被废弃 # max_age,在IE8一下的浏览器中是不支持的 resp.set_cookie('username','dadf',expires=expires,max_age=60) return resp

# 注意expires比max_age的兼容性更好

Session

flask的session只是讲数据加密存储在客户端

app.config['SECRET_KEY'] = os.urandom(24)  # 设置盐
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(hours=2)   # 设置session过期时间需要更精准的过期时间的时候

@app.route('/')
def index():
    session['username'] = 'zhiliao'
    session['user_id'] = '123'
    # permanent:持久化  # 默认为false  如果true就存储31天
    session.permanent = True
    print(type(session))
    return 'Hello World!'

@app.route('/get_session/')
def get_session():
    username = session.get('username')
    user_id = session.get('user_id')
    print(user_id)
    return username or '没有session'

@app.route('/delete_session/')
def delete_session():
    session.pop('username')  # 删除
    session.clear()   # 清空
    return '删除成功'
原文地址:https://www.cnblogs.com/yxi-liu/p/8575976.html