1.状态保持
▪▪▪▪无状态:
因为 http 是一种无状态协议,浏览器请求服务器是无状态的,指一次用户请求时,浏览器、服务器无法知道之前这个用户做过什么,每次请求都是一次新的请求。
无状态原因:浏览器与服务器是使用 socket 套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的 socket 连接,而且服务器也会在处理页面完毕之后销毁页面对象。
▪▪▪▪状态保持:
有时需要保持下来用户浏览的状态,比如用户是否登录过,浏览过哪些商品等
实现状态保持主要有两种方式:使用Cookie在客户端存储信息,使用Session在服务器端存储信息
1.1.Cookie:
▪Cookie是由服务器端生成,发送给客户端浏览器,浏览器会将Cookie的key/value保存,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用cookie)。
▪应用:最典型的应用是判定注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录手续,这些都是Cookie的功用。
▪提示:Cookie基于域名安全,不同域名的Cookie是不能互相访问的
如:访问jingdong.com时向浏览器中写了Cookie信息,使用同一浏览器访问baidu.com时,无法访问到jingdong.com写的Cookie信息,浏览器的同源策略
1.2.session:
对于敏感、重要的信息,建议要存储在服务器端,不能存储在浏览器中,如用户名、余额、等级、验证码等信息,在服务器端进行状态保持的方案就是Session
【Flask】4个session(一)状态保持及请求/应用向下文
最新推荐文章于 2022-06-25 13:52:14 发布
本文介绍了HTTP的无状态特性以及为实现状态保持所使用的Cookie和Session机制。在Flask框架中,详细阐述了请求上下文(包括request和session)和应用上下文(current_app和g)的概念,它们在处理HTTP请求和维护用户信息中的作用,并提供了相关使用示例。
摘要由CSDN通过智能技术生成