除了 Cookie,还有哪些方法可以实现验证码?

除了 cookie,还有哪些方法可以实现验证码?

除了 Cookie,实现验证码还有哪些方法?

从传统使用 Cookie 来实现验证码功能出发,本文介绍了两种替代方案。

一、Redis 保存验证码

  • 前端调用发送验证码的接口,该接口向用户手机号发送验证码,同时将验证码保存在 Redis 中,设置短时间的有效期。
  • 用户收到验证码后,输入验证码并调用验证接口。
  • 验证接口将用户输入的验证码与 Redis 中保存的验证码进行比对,校验通过后即可完成验证。

二、会话 Cookie

相对较新的方法,通过会话 Cookie 来实现验证码。会话 Cookie 在关闭浏览器后失效,因此可以一定程度上解决 SameSite 带来的问题。

  • 前端发送验证码请求,服务器生成一个会话 Cookie 和一个用于验证的令牌。
  • Cookie 和令牌分别发送给前端和存储在服务器端。
  • 用户收到验证码后,输入验证码并向服务器发送验证请求。
  • 服务器验证 Cookie 和令牌是否匹配,校验通过后即可完成验证。

以上就是除了 Cookie,还有哪些方法可以实现验证码?的详细内容,更多请关注其它相关文章!