一些网站,例如Yahoo和Google,使用 Ajax 来检查用户名/密码是否错误。显然必须有服务器端身份验证,因为任何人都可以更改本地 JavaScript 并欺骗它认为用户名/密码是正确的。我想知道这是如何有效地完成的,因为服务器不会两次检查相同的用户名/密码吗?考虑以下用户登录网站的场景:
- 用户来到登录页面
- 用户输入用户名/密码并点击提交
- 如果输入的用户名/密码正确,服务器通过 Ajax 与客户端通信
- 服务器回复说用户名/密码是否正确 - 在这个例子中是
- 提交后,
<form>
间歇性页面将输入的值通过POST
并在服务器端再次处理以验证用户名/密码是否正确以及是否在会话中设置了变量
在第 5 步中,服务器会第二次检查与第 3 步中相同的用户名/密码是否正确。有没有办法缓存第 3 步的结果或提高流程效率?此外,服务器已经在第 3 步中发送了用户名/密码。但我不确定这是否会加速该过程。
我正在使用 MySQL 数据库来存储用户名和密码。