当前位置: 首页 > 工具软件 > simple-orm > 使用案例 >

django-simple-captcha验证码的验证问题

孔瑾瑜
2023-12-01

django-simple-captcha验证码的验证问题
验证码生成时用户还没有登录,所以无法拿到用户id,这能设置验证码的有效时间
验证码的验证:

def jarge_captcha(captchaStr, captchaHashkey):
    if captchaStr and captchaHashkey:
        try:
            # 获取根据hashkey获取数据库中的response值
            get_captcha = CaptchaStore.objects.get(hashkey=captchaHashkey)
            if get_captcha.response == captchaStr.lower():     # 如果验证码匹配
                return True
        except:
            return False
    else:
        return False

验证码设置失效时间,有两种,
1、直接MySQL用时间取值

# 获取一分钟以内的数据
# 1,将当前时间减一分钟,
# 2,通过orm查询时间大于等于刚才获取的时间
a_minute_ago=datetime.datetime.now()-datetime.timedelta(minutes=1)
reocrd=table.objects.filter(create_time__gte=a_minute_ago)

2、使用redis做缓存处理
使用captcha生成图形验证码、设置有效期

 类似资料: