登陆页面过期实现的原理是怎样的?

我看见有很多网站,打开一个用户登陆页面,超过几分钟没操作登陆,

然后,突然想起来了,输入用户名,密码,点击登陆。

网站会提示,页面已经过期,直接刷新了一下登陆页面。

让用户再登陆。

这个是什么用处啊?

是不是可能是为了这样,用户输入,用户名,密码,然后没点登陆,然后去吃饭了。

防止在吃饭这段时间,有人点击登陆?

这个是咋实现的?

阅读 3.4k
3 个回答

没有遇到过这种情况
我猜测可能是为了防止xss攻击,生成了一个短期的用于校验的token,这个token有个过期时间,过期了需要重新获取

实现方法可以这样,登录的api需要一个专门的token,打开登录页的时候,前端向后台申请这个token,后台创建这个token并记录时间,登录的时候,前端把用户名、密码和token发送到后台,后台判断这个token是否过期。

纯前端做法
页面加载完成后 获取当前时间并存储,提交表单时再获取当前时间 判断是否超时。

后端做法
因为要确保是同一个会话,所以需要想一些办法来保持会话,比如 session 什么的,也是和前端处理同样的步骤。

只不过前端容易被伪造,后端不容易,其次这个功能似乎没有啥用。如果用户都填写了表单,即使是密码,别人如果能够接触到设备,还是可以获得明文内容

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题