夏天的烦恼

导航

python 前后端不分离 忘记密码

 

 

 

 

第一步 先render  find_password.html

# 1.接收参数 image_code  uuid

# 2.校验用户名 和 图形验证码 

user = User.objects.get(username=username)

取出redis的uuid拿到的redis_img_code比对  if image_code.lower() != redis_img_code.decode().lower():

# 生成随机64位码字符串 存入redis 为下次发短信提交做准备

# 生成 随机码 

#设置有效期

#加密

#返回响应

 

第二步  发送短信   

新接口获取短信验证码(以前的注册页面的发短信不能使用)

# 1.接收access_token 解密 校验是否准确  

# 解密前端 传入的

# 获取后台存储的  连接verify_image_code   根据手机从redis取出redis_random_token 然后对对比

# * 3.生成随机 6位 短信验证码内容 random.randit()  

# *   4.存储 随机6位 redis里面(3步 )  #连接取出sms_code

# 1.获取 频繁发送短信的 标识

 # 2.判断标识 是否存在

# 3.标识不存在 ,重新倒计时 (管道)

#4.使用异步celery 发短信---第三方容联云或者阿里云

#5返回响应对象

第二个 下一步 提交

#拿到sms_code = request.GET.get('sms_code')

# 1.校验手机号

# 2.校验验证码  (3步)

# 3.返回正确的响应  #1redis拿到verify_image_code,2通过mobile拿到redis_random_token  3加密 解码access_token = SecretOauth().dumps(redis_random_token.decode())

第三步 提交

获取参数 json_dict password password2 access_token

#判空

# 解密前端 传入的

#判断密码

# *   3.确认密码: ---------判空,判断是否相等

#4.三步判断

# 5.更新密码 

user.set_password(password)   user.save()

# 6.返回响应  密码设置成功  跳回登录页面重新登录

posted on 2019-12-17 21:39  夏天的烦恼  阅读(280)  评论(0编辑  收藏  举报