新闻中心

html5使用localStorage实现记住登录状态 html5使用自动登录功能的逻辑

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

html5使用localstorage实现记住登录状态 html5使用自动登录功能的逻辑

实现“记住登录状态”和“自动登录”功能,核心是利用 HTML5 的 localStorage 在浏览器中持久保存用户身份信息。以下是清晰的逻辑与实现方式。

1. 登录时保存用户信息(记住我)

当用户勾选“记住我”并成功登录后,将必要的登录凭证(如 token、用户名、过期时间等)存入 localStorage。

  • 通常保存的是 token 而非密码,更安全
  • 可附加一个过期时间戳,控制自动登录的有效期

示例代码:

// 模拟登录成功后
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);
}

2. 页面加载时检查是否自动登录

在进入登录页或首页时,读取 localStorage 中的登录信息,判断是否有效,决定是否跳过登录页。

  • 检查是否存在 token
  • 验证 token 是否过期
  • 若有效,调用接口验证 token 合法性,获取用户信息
  • 自动跳转到主页

示例代码:

function autoLogin() {
  const token = localStorage.getItem('authToken');
  const expires = localStorage.getItem('authExpires');
<p>if (!token || !expires) return false;</p>
                    <div class="aritcle_card">
                        <a class="aritcle_card_img" href="/ai/748">
                            <img src="https://img.php.cn/upload/ai_manual/000/000/000/175680245379293.png" alt="MarsCode">
                        </a>
                        <div class="aritcle_card_info">
                            <a href="/ai/748">MarsCode</a>
                            <p>字节跳动旗下的免费AI编程工具</p>
                            <div class="">
                                <img src="/static/images/card_xiazai.png" alt="MarsCode">
                                <span>339</span>
                            </div>
                        </div>
                        <a href="/ai/748" class="aritcle_card_btn">
                            <span>查看详情</span>
                            <img src="/static/images/cardxiayige-3.png" alt="MarsCode">
                        </a>
                    </div>
                <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>

3. 退出登录时清除数据

用户点击“退出”时,必须清除 localStorage 中的认证信息,确保安全。

function logout() {
  clearAuthData();
  window.location.href = '/login';
}

注意事项:

localStorage 不是绝对安全的存储方式,容易受到 XSS 攻击。敏感信息建议只存 token,并配合 HttpOnly Cookie 存储更关键的会话标识。自动登录适用于低风险系统,高安全场景应使用更严格的机制。

基本上就这些。不复杂但容易忽略细节。

以上就是html5使用localStorage实现记住登录状态 html5使用自动登录功能的逻辑的详细内容,更多请关注其它相关文章!


# 游戏开发  # 广安移动端网站建设报价  # 泉州城乡建设网站  # 企业网站推广营销价格  # 酒店网站推广方案书  # 阜新seo  # 拼多多网站营销推广策略  # 北京网站建设推荐咨询  # 珠海seo网站优化  # 营销视频怎么推广的好呢  # 淮滨360推广营销费用  # 文档  # 加载  # 的是  # html5  # 转换工具  # 勾选  # 使用技巧  # 跳转  # 记住我  # 自动登录  # win  # 浏览器  # cookie  # go  # json  # js  # html 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: 126邮箱手机版登录官网2026_126手机邮箱免费入口最新  Windows电脑怎么截图最方便_系统自带截图工具的5种神仙用法【技巧】  C++如何实现一个智能指针_手动实现C++ shared_ptr的引用计数功能  Golang如何通过reflect操作map_Golang reflect map操作与遍历技巧  J*a里如何使用N*igableMap进行导航操作_可导航Map操作技巧解析  腾讯QQ邮箱登录入口_QQ邮箱官方网站使用地址  新三国志曹操传110级星符试炼夏侯渊极难攻略  《马克思佩恩3》早期版本曝光 UI设计曾多次调整!  Golang如何使用net/url解析URL_Golang URL解析与处理方法  Golang如何处理RPC请求负载均衡_Golang RPC请求负载均衡策略与实践  Win10如何恢复误删的快捷方式_Win10重建常用软件快捷方式  Android Studio计算器C键逻辑错误排查与修复:条件判断优化指南  小红书网页版入口链接分享 小红书官网直接进  在J*a中如何捕获IndexOutOfBoundsException_索引越界异常防护方法说明  MAC如何安全彻底地删除文件_MAC使用终端命令确保文件无法被恢复  Odoo 16:在表单视图中基于当前记录动态修改Tree视图属性  Go Martini框架:动态服务解码后的图片内容  Sublime Text怎么设置垂直标尺_Sublime配置Rulers规范代码长度  今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程  漫蛙漫画官方主页入口 漫蛙MANWA网页直达访问链接  Yandex官网免登录入口_俄罗斯Yandex搜索引擎一键访问  MAC怎么让Dock栏只显示当前运行的应用_MAC终端命令实现极简Dock栏  知音漫客官网漫画下载_知音漫客网页版阅读记录  Windows 11怎么彻底关闭定位_Windows 11服务中禁用Geolocation  Win10自动更新怎么关闭 Win10永久关闭系统更新的两种方法【终极版】  Descript怎样用AI剪辑自动去噪_Descript用AI剪辑自动去噪【自动降噪】  163邮箱登录密码 163邮箱忘记密码找回  拷贝漫画电脑版官网入口 拷贝漫画(PC版)在线直达  极兔快递快件信息查询系统 极兔快递官网运单号追踪  Win10怎么设置静态IP地址 Win10手动配置IP地址步骤【指南】  SteamMachine定价或为699美元 大家想入手吗?  新手怎么开始学化妆 零基础化妆入门教程  QQ邮箱网页版登录入口 QQ邮箱官方在线使用平台  c++ dfs和bfs代码 c++深度广度优先搜索算法  LINUX下如何进行磁盘分区_fdisk与parted工具在LINUX中的使用对比  HTML空白字符处理机制:渲染、DOM与编码实践  HuggingFaceEmbeddings中向量嵌入维度调整的限制与理解  React Hooks最佳实践:动态组件状态管理的组件化方案  漫蛙2正版漫画站 漫蛙2网页版快速访问入口  快手官方唯一登录入口 谨防山寨钓鱼网站  Node.js CSV 数据处理:基于字段空值条件过滤整条记录的策略  yandex入口引擎手机版 yandex安卓版下载入口  一加手机电池耗电快怎么办_一加手机电池耗电快的解决方法  Golang如何使用buffered channel提高性能_Golang buffered channel优化技巧  小红书怎么解除第三方平台绑定_小红书多平台登录解绑方法介绍  Win11怎么设置开机NumLock亮 Win11修改注册表InitialKeyboardIndicators值  Mac怎么锁定备忘录_Mac备忘录加密设置教程  Win11怎么关闭快速启动_Win11彻底关机设置教程  PyTorch模型训练准确率不提升:诊断与修复常见指标计算错误  微信网页版官方快速登录入口 微信网页版网页版账号直达 

搜索