如何编写我的 HTML 登录表单以显式启用 LastPass?

Posted

技术标签:

【中文标题】如何编写我的 HTML 登录表单以显式启用 LastPass?【英文标题】:How can I write my HTML login form to explicitly enable LastPass? 【发布时间】:2014-10-14 08:06:42 【问题描述】:

如何编写我的 html 登录表单以保证与 LastPass 一起使用,或者至少使其尽可能地正常工作?有些网站需要“保存所有输入的数据”才能与 LastPass 一起正常工作,但作为网站开发人员,我正在寻找更好的东西。我需要做些什么来确保 LastPass 默认模式(“保存站点”)尽可能完美地工作?我找不到任何官方文档,甚至找不到任何带有建议的好的博客文章,但这肯定会回答我的问题。理想的或至少在经验上成功的标记是什么样的?

(1)证据和/或(2)适用于多个密码管理器的策略的额外功劳。

【问题讨论】:

我猜你应该为你的输入使用通用名称,比如usernamepassword... @Will 官方支持声明中的评论应该是一个真实的答案,包括代码示例。 添加了答案,@VolkerE。 【参考方案1】:

终于找到official support statement。摘录:

<form action="https://mypage.com/blah" method="post">
  <input type="text" name="username" id="username" value=""/>
  <input type="password" name="password" id="password" value=""/>
  <input type="submit" value="LOGIN"/>
</form>

This closely related question 对于所有密码管理器的一般建议也很有帮助。

【讨论】:

顺便说一句,登录应该写成“登录”,因为你应该关心通过 CSS 进行样式设置。感谢您的回答! 对于更改现有密码的表单:我必须将现有密码的名称设置为old_password,然后新密码和确认密码可以是任何东西。 (YMMV)【参考方案2】:

我认为大多数密码管理器都试图通过检查 name 属性和 css 类/id 来了解输入字段的含义。我尝试给我的输入名称提供人类使用的名称,例如 usernamepasswordcity 之类的东西。对于大多数密码管理器来说,这已经奏效了。 Chrome的经理似乎也明白这一点。

【讨论】:

谢谢@Reflic。根据经验测试,名字(也许还有 id)似乎比阶级更重要。如果您有其他名称,例如“电子邮件”,LastPass 似乎无论是哪个班级都难以识别它。所以&lt;input name="username"... 似乎足够并且可能是必要的。每当开发人员可以控制所有这些属性时,我都会推荐 &lt;input name="username" class="username" id="username"...&lt;input name="password" class="password" id="password" type="password"...

以上是关于如何编写我的 HTML 登录表单以显式启用 LastPass?的主要内容,如果未能解决你的问题,请参考以下文章

如何在重组文本中注释字符串?

如何将 csrf 令牌添加到 html 表单?

如何才能编写高性能的 Swift 代码

如何向启用 OpenID 的站点添加注销功能?

Symfony 5 登录表单操作返回无效的 CSRF 令牌

如何从 mongodb 到 html 表单字段中获取数据?