session和cookie及flask的session工作机制

1、cookie:
    浏览器访问服务器,服务器返回一个cookie给浏览器,存在浏览器本地中,当第2次访问服务器时,
    浏览器自动携带cookie给服务器,服务器识别到了cookie,就识别到了是同一个客户
2、session(更安全,有过期时间):与cookie不同的是,session存在服务器中,数据更安全,不容易被窃取
    但需要更多的资源,占用服务器资源。把用户的信息经过加密后存放到session中,并产生一个唯一的session_id(随机产生的),
    把session_id返回给浏览器中,存储到浏览器的cookie中,当用户下一次访问时,就会自动携带浏览器的cookie到服务器,服务器
    拿到了cookie就会知道session_id,再session中对应的session_id存入相应的用户信息,服务器就这是哪个用户了

    使用session的好处:
        *敏感数据不会直接发送到浏览器,而是返回一个随机的session_id给浏览器。服务器将session_id和敏感数据
        做一个映射存储在session(在服务器上面)中,更加安全
        *session可以设置过期时间,也从另外一方面,保证了用户的账号安全

cookie和session 同生共死,携同合作

3、flask 的session工作机制(把session放到cookie中,并一起返给浏览器)
    工作机制:
    1、把敏感数据经过加密后放入到session中,然后再把session存放到cookie中,下次请求的时候
    再从浏览器发送过来的cookie中读取session,然后再从session中读取敏感数据,并进行解密,获取最终
    的用户数据
    2、flask的这种session机制,可以节省服务器的开销,因为把所有的信息都存储到了客户端(浏览器)
    3、安全是相对的,把session放到cookie中,经过加密,也是比较安全的,可以放心使用

猜你喜欢

转载自blog.csdn.net/qq_39974381/article/details/80913390