我正在为网站编写登录系统,但是当用户获得登录凭据错误时,浏览器(我已经尝试过Firefox和Chrome)仍然会询问用户是否要保存密码.如何告诉浏览器登录失败,以便它知道不要求用户保存错误的凭据?
我已经尝试发送403和500的HTTP状态代码(而不是正常的200),但都没有工作.有办法做我想要的吗?
PS我不想使用HTTP 401身份验证机制,因为我想使用HTML表单登录,而不是某些浏览器对话框.
查看Chrome的源代码以确定其工作原理(请参阅参考资料OnPasswordFormsRendered),它正在做一些启发式方法来确定这一点.它似乎这样做的方式是:
用户登录失败时; 他们应该再次呈现相同的形式.您的"登录失败"屏幕似乎与原始登录屏幕的区别太大,浏览器无法看到它们是相同的格式.
似乎HTTP状态代码对提供保存密码没有影响.
较新版本的Chrome 会考虑 HTTP状态代码.如果状态代码介于400和600之间,则不会提供保存密码.
其他详细信息在相同的源文件中有相当好的文档记录.
| 归档时间: |
|
| 查看次数: |
713 次 |
| 最近记录: |