登录时若勾选“记住我”,将token和过期时间存入localStorage;2. 页面加载时检查token有效性,未过期则请求验证并自动跳转主页;3. 退出时清除存储数据。核心是通过localStorage持久化凭证实现自动登录,需注意XSS风险与敏感信息保护。

实现“记住登录状态”和“自动登录”功能,核心是利用 HTML5 的 localStorage 在浏览器中持久保存用户身份信息。以下是清晰的逻辑与实现方式。
当用户勾选“记住我”并成功登录后,将必要的登录凭证(如 token、用户名、过期时间等)存入 localStorage。
示例代码:
// 模拟登录成功后
if (rememberMe.checked) {
const token = response.token;
const expires = Date.now() + 7 * 24 * 60 * 60 * 1000; // 7天后过期
localStorage.setItem('authToken', token);
localStorage.setItem('authExpires', expires);
}
在进入登录页或首页时,读取 localStorage 中的登录信息,判断是否有效,决定是否跳过登录页。
立即学习“前端免费学习笔记(深入)”;
示例代码:
function autoLogin() {
const token = localStorage.getItem('authToken');
const expires = localStorage.getItem('authExpires');
<p>if (!token || !expires) return false;</p><p>if (Date.now() > parseInt(expires)) {
// 已过期,清除
clearAuthData();
return false;
}</p><p>// 请求服务器验证 token
fetch('/api/verify', {
method: 'POST',
headers: { 'Authorization': <code>Bearer ${token}</code> }
})
.then(res => res.json())
.then(data => {
if (data.valid) {
// 自动登录成功,跳转主页
window.location.href = '/dashboard';
} else {
clearAuthData();
}
})
.catch(() => clearAuthData());
}</p><p>function clearAuthData() {
localStorage.removeItem('authToken');
localStorage.removeItem('authExpires');
}</p>用户点击“退出”时,必须清除 localStorage 中的认证信息,确保安全。
function logout() {
clearAuthData();
window.location.href = '/login';
}
注意事项:
localStorage 不是绝对安全的存储方式,容易受到 XSS 攻击。敏感信息建议只存 token,并配合 HttpOnly Cookie 存储更关键的会话标识。自动登录适用于低风险系统,高安全场景应使用更严格的机制。
基本上就这些。不复杂但容易忽略细节。
以上就是html5使用localStorage实现记住登录状态 html5使用自动登录功能的逻辑的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号