后端怎样实现先验证手机号再注册?

后端怎样实现先验证手机号再注册?

需求:

  1. 用户填写手机号并接收验证码
  2. 使用验证码提交注册

在用户手机号通过验证并点提交注册后,往数据库用户表添加信息;不提交注册不往用户表添加信息。

防止用户在注册时恶意修改手机号,比如使用13333333333获取验证码,然后把手机号修改为15555555555提交注册

设想

我的设想是:
给用户发送验证码后,把手机号验证码过期时间存放在一个临时表里,当用户点提交后,验证数据后再把数据插入用户表。但是这样有个问题,临时表需要定期清理,如果使用VPS还好解决,但如果是虚拟机并且主机商没提供任务计划功能就难办了。

不知道你是怎样解决的,给个方案,谢谢!

经考虑,采用缓存的方法。虽然用数据库可以很轻松的应付大量用户注册的情况,但是如果有那么大的注册量的话,也不有在乎这点内存了,做梦都会笑出声来~~~


回答:

写到缓存就行了,验证码有效期多久,缓存有效期就是多久


回答:

  • 验证码一般都有时效啊,生成码验码时肯定会缓存对应的手机号嘛,
  • 提交时要验证手机号、验证码相对应才算通过~


回答:

你说的完全可行,搞一个验证码发送日志表嘛,也不占多少空间


回答:

建议用缓存,手机号做key,验证码做value。设置好过期时间。


回答:

最简单的写个txt存一下就ok


回答:

一般来说验证码都是有时效性的,过期了就无法使用了。而且在发送验证码时至少需要记录验证码和手机号的关联关系,甚至还需要记录跟设备号等风控相关的参数,在提交验证码时进行二次校验,防止用户恶意使用验证码。


回答:

  • 填写手机号
  • 获取验证码(将验证码、手机、过期时间戳,写入数据库)
  • 提交时,查询数据库验证手机、验证码、时间戳
  • 限制重复获取验证码限制、间隔限制、次数限制
  • 每次有新用户注册清理一次验证表(清理七天前或一个月前)
  • 结构简单的验证表占用空间不大,即使上万条速度也非常快

以上是 后端怎样实现先验证手机号再注册? 的全部内容, 来源链接: utcz.com/a/165539.html

回到顶部