码迷,mamicode.com
首页 > 其他好文 > 详细

flask中的session

时间:2019-02-07 20:42:49      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:操作   config   文件   ==   flask   客户端   直接   弊端   __name__   

简述session,cookie

session  :  session和cookie的作用类似,都是为了 存储用户有关的信息,不同的是,cookie是村塾在本地浏览器,session是存储在服务器.存储在服务器的数据相对来说更加安全,不容易被窃取.但储存在服务器有一定的弊端,就是会占用服务器的资源,但现在服务器发展至今,一些session信息还是绰绰有余的.

               好处:敏感数据不是直接发给浏览器,而是发送回一个session_id,服务器将session_id和敏感数据做一个映射存储在session中,更加安全

flask中的session工作机制

1 . 把敏感数据经过加密后放入session中,然后再把session存储到cookie中,下次请求的时候,获取cookie中的session,然后再从session中读取敏感数据,并进行解密,获取用户的数据

2 . flask的这种session机制,可以节省服务器的凯西欧啊,因为把所有的信息都存书到了客户端(浏览器)

3 . 数据经过加密是相对安全的

操作session

from flask import Flask,session
import os

app = Flask(__name__)
# 从配置文件读取app.config[‘SECRET_KEY‘] = os.urandom[24]
# app.config[‘SECRET_KEY‘] = os.urandom(24)
#如果设置成随机的,则重新运行时无法获取username,解决方法就是设置一个固定的SECRET_KEY    
app.config[‘SECRET_KEY‘] = ‘123456‘

@app.route(‘/‘)
def hello_world():
    session[‘username‘] = ‘zhiliao‘
    return ‘Hello World‘
@app.route(‘/get‘)
def get_session():
    return session.get(‘username‘)

@app.route(‘/delete‘)
def delete_session():
    print(session.get(‘username‘))
    session.pop(‘username‘)
    print(session.get(‘username‘))
    return ‘success‘

@app.route(‘/clear‘)
def clear():
    print(session.get(‘username‘))
    #删除session中的所有数据
    session.clear()
    print(session.get(‘username‘))
    return ‘success‘

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

  

 

flask中的session

标签:操作   config   文件   ==   flask   客户端   直接   弊端   __name__   

原文地址:https://www.cnblogs.com/lxx7/p/10355460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!