我们在访问网站时,常会遇到登录页面带有'记住密码'的选项。很多人误以为这是前端直接保存了密码,其实不然。
核心原理:浏览器提示填充
前端的'记住密码'功能通常不直接存储明文密码。它的核心机制是请求浏览器将账号密码保存到其密码管理器中,并在下次检测到对应登录表单时,自动或提示用户填充。
流程大致如下:首次登录输入账号密码并勾选'记住我',提交成功后浏览器会弹出提示询问是否保存。用户确认后,凭证会被加密存储在本地。再次访问时,浏览器识别表单字段,自动填入已存信息,用户点击登录即可完成验证。
技术实现方案
首选方案:依赖浏览器原生行为
这是最标准、最安全的做法。浏览器的密码管理器会自动识别符合规范的登录表单,无需额外代码干预。
1. 基础表单要求
<form id="login-form" method="post">
<!-- 关键:input 的 type 和 name 需规范 -->
<input type="text" name="username" id="username" autocomplete="username">
<input type="password" name="password" id="password" autocomplete="current-password">
<!-- '记住我'复选框 -->
<label>
<input type="checkbox" name="remember-me" id="remember-me"> 记住密码
</label>
<button type="submit">登录</>


