根据电子邮件自动补全密码(在浏览器密码管理器中)而不是恢复代码

问题描述 投票:0回答:1

我的“忘记密码”网页通过电子邮件向用户发送代码。他们输入的表格如下所示:

<input class="form-control" type="text" name="code" id="code">
<input type="hidden" name="email" value="$email" autocomplete="email">
<input class="form-control" type="password" name="password" id="password" autocomplete="new-password">
<input data-parsley-equalto="#password" name="confirm-password" class="form-control" type="password" id="confirm_password" autocomplete="new-password">

问题是,当用户输入代码和新密码时,浏览器(在本例中为 Chrome)将根据恢复代码创建一个新的“已保存密码”条目,而不是电子邮件地址(在帐户创建页面上可以正常工作) .

隐藏的电子邮件地址字段本应“欺骗”浏览器根据电子邮件地址保存新密码,但 Chrome 会忽略它并继续针对(无用的)恢复代码创建新的“已保存密码”条目。

我需要更改什么才能说服浏览器根据电子邮件地址保存新密码?

google-chrome autocomplete recovery forgot-password
1个回答
0
投票

解决方案是将恢复代码字段标记为一次性密码:

<input class="form-control" type="text" name="code" id="code" autocomplete="one-time-code">

这样可以选择隐藏的电子邮件地址作为更改密码的帐户,并在 Chrome 密码管理器中正确更新。

© www.soinside.com 2019 - 2024. All rights reserved.