状态保持-session

可以将session理解为存储信息的容器。重要、敏感的信息不能保存在cookie中,可以将其保存在服务端的session里面。

cookie里面:保存session_id

session里面:存储用户真正的信息,每个用户的信息对应一个session_id,把session_id保存在cookie里面。

注:正常浏览器和服务器之前的状态保持是使用以上方式,但是flask比较特殊。flask又会将session保存到浏览器的cookie里面去,对session做了加密(secret.key='asdfghj'),但是这种加密实际上是障眼法,可以通过base64解码轻易破解。

secret.key='asdfghj':加密时起混淆作用。

# 设置session
@app.route('/set_session')
def set_session():
    session['session_name'] = 'python'
    return redirect(url_for('get_session'))
    # return session.get('session_name')

# 得到session
@app.route('/get_session')
def get_session():
    # 注意session得到的方法和cookie得到的方法不一样,cookie是通过request.cookies.get()方法获取
    # session直接通过get方法获取
    session_name = session.get('session_name')

    return session_name

# 删除session
@app.route('/del_session')
def del_session():
    session.pop('session_name')
    return '删除session成功'

猜你喜欢

转载自blog.csdn.net/longting_/article/details/80699286
今日推荐