Rails 中的会话与 Cookie 管理
1. Web 请求的独立性与 Rails 的平衡
Web 设计初衷是一次处理一个请求,从客户端和服务器的角度看,每个请求都是相互独立的。尽管一组请求可能操作同一个数据库,应用各部分之间也有清晰的路径,但 HTTP 和可扩展的 Web 应用设计都尽量让请求保持独立,这样能简化底层基础设施。
Rails 在基础设施的简单性和应用开发者维护上下文的需求之间取得平衡。Rails 支持多种跟踪用户信息的机制:
- 若想手动跟踪用户,可以使用 Cookie。
- 若要在一系列短暂交互中跟踪用户,Rails 内置的会话支持就能满足需求。
2. Cookie 的使用
Rails 和大多数 Web 框架一样,支持 Cookie。Cookie 是服务器可以设置在浏览器上的小文本块,通常小于 4KB,浏览器会在向服务器发送请求时将其传回。浏览器会记录 Cookie 的来源,只向原服务器报告其值。Rails 主要通过每个请求和响应的 HTTP 头来设置和接收 Cookie。
2.1 Cookie 的使用注意事项
- 隐私问题 :Cookie 刚出现时,开发者喜欢用它跟踪访问网站的用户,但隐私倡导者对此不满。如今,虽然 Cookie 已成为用户喜爱的功能的关键部分,但仍有被滥用的可能。为避免引起用户反感,应将 Cookie 的有效期设置得相对较短,仅在用户请求时使用较长有效期的 Cookie(如登录时的“记住我”复选框),且绝不要直接在 Cookie 中存储敏感信息。
- 直接使用场景 </
超级会员免费看
订阅专栏 解锁全文
5

被折叠的 条评论
为什么被折叠?



