cookie和session

  1. HTTP请求是无状态的,用户会话跟踪技术有cookie和session
  2. session是基于cookie实现的
  3. cookie随着服务器的响应写入客户端浏览器,下次
    再向服务器发送请求是会自动把cookie添加到HTTP请求中
  4. cookie是保存在客户端浏览器中的一段字符串信息

session

  1. 保存在服务器中,会占用服务器资源
  2. session是一小块内存空间
  3. session创建时会使用UUID算法拿到一个字符串session_id
  4. session_id会作为会话cookie写入浏览器,再次请求时会根据浏览器发来的session_id找到对应的session
  5. sesseion使用两级超时模式,可以设置过期时间
  6. 敏感数据存储在服务器,更加安全

Flask session

  1. Flask的session机制是将用户数据加密之后放到cookie中的,
    而不是保存在服务器上
  2. 服务器重启后Secret_key会变化,所以之前写入浏览器的session会解析不到正确结果
  3. session加密需要设置SECRET_KEY,app.config[‘SECRET_KEY’]=os.urandom(24)
  4. 添加数据到session,session[‘username’]=’mark’
  5. 读取session数据,session.get(‘username’)
  6. 删除session,session.pop(‘username’)或者session.clear()
  7. 如果没有指定session过期时间,默认浏览器关闭时过期
  8. session.permanent=True 过期时间是一个月(31天)
  9. app.config[‘PERMANENT_SESSION_LIFETIME’] =timedelta(days=7) 设置session有效期限为7天
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值