Fork Me On Github
zodream 技术 2周前

登录“记住我”的实现

原理

用户登录时勾选 记住我,服务器生成随机token 加用户id 组成字符串永久保存到浏览器cookie 中,下一次从浏览器获取并提取token和id 获取用户登录即可

数据

用户表需要两个关键字段 idremember_token

id 是查询用户的主键 remember_token 为随机生成的字符串

程序

需要方法

bool login(User user, bool remember);// 登录

bool logout();// 登出并清除cookie

bool setRememberToken(User user);// 生成token 保存到数据库并设置cookie

[int, string] getRememberToken();// 从cookie获取 id 和token

User findByIdentity(int id);// 根据id 获取用户

User findByRememberToken(int id, string token);// 根据id 和token获取用户
点击查看全文
0 4 0