【发布时间】:2014-07-15 03:34:02
【问题描述】:
我希望在我的网站上集成记住我的功能。有人可以解释一下它背后的基本概念和代码吗?
【问题讨论】:
标签: web
我希望在我的网站上集成记住我的功能。有人可以解释一下它背后的基本概念和代码吗?
【问题讨论】:
标签: web
通常是通过 cookie 完成的。用户登录后,cookie 会设置一个特定的(加密安全的)代码(通常不包括用户的密码或其任何派生,而是用于查找用户的哈希),该代码随每个请求一起发送。该网站首先检查用户是否登录,如果没有,它会查找该 cookie 并尝试解析数据。如果数据匹配/有效,则用户自动登录成功。 cookie 可以设置多天(例如 30 天)并在用户注销时删除。
【讨论】:
在大多数情况下,当您提交登录页面时,服务器会向客户端浏览器发送一个 cookie,其中包含一些加密信息,然后浏览器会将这些信息与每个请求一起发送到指定域。在大多数情况下,再次选中“记住我”会延长此 cookie 的期限以在会话结束后存储它。如果没有设置 cookie 应该持续一段时间的“标志”,浏览器将在用户“完成”后立即处理 cookie,尽管这通常是一个宽松的术语。
您可能想阅读一些问题并回答here,因为它们提供了如何编写服务器端代码的示例。
【讨论】:
在cookie中存储Hash,在数据库中存储相同的hash,登录时检查cookie中存储的哈希是否与数据库中存储的hash相同,登录用户。
听起来很简单。
【讨论】: