def send_validate_code(request): """发送验证码""" result = {'status': 0, 'msg': '网络异常,请稍后刷新重试'} try: if request.method == 'POST' and request.is_ajax(): # 验证电话号码 phone = request.POST.get('phone', '') phone_re = re.compile('^0\d{2,3}\d{7,8}$|^1[358]\d{9}$|^147\d{8}$') is_phone = phone_re.match(phone) if is_phone: # 判断这个用户存在与否 is_phone_exist = User.objects.filter(phone=str(phone)).first() if is_phone_exist: # # 避免多次发送短信 # request.session.set_expiry(180) # phone_session = request.session.get('account_safety', '') # if phone_session: # result = { # 'status': 0, # 'msg': u'验证码已经发送,请注意查收' # } # return JsonResponse(result) # 发送验证码 sms_msg = make_sms() c = CaptchaStore() # 把验证码存入session request.session['account_safety'] = sms_msg[1] # 存库 c.response = sms_msg[1] c.challenge = phone c.save() result = {'status': 1, 'msg': '验证码已经发送,请注意查收'} # 测试 可不发短信 去CaptchaStore中查看验证码 if not settings.DEBUG: send_sms([phone], sms_msg[0]) result = { 'status': 1, 'key': c.hashkey, } return JsonResponse(result) else: # result = { # 'status': 0, # 'msg': u'这个电话没有注册,请先注册' # } # return JsonResponse(result) raise Exception('这个电话没有注册,请先注册') else: result = {'status': 0, 'msg': '请输入正确的电话号码'} return JsonResponse(result) else: raise Exception("请求异常") except Exception, e: log.exception("send_validate_code raise, Error:%s" % e) result = {'status': 0, 'msg': str(e)}
def send_validate_code_new(request): """发送验证码""" result = {'status': 0, 'msg': '网络异常,请稍后刷新重试'} try: if request.method == 'POST' and request.is_ajax(): # 验证电话号码 phone = request.POST.get('phone', '') phone_re = re.compile('^0\d{2,3}\d{7,8}$|^1[358]\d{9}$|^147\d{8}$') is_phone = phone_re.match(phone) if is_phone: # 发送验证码 sms_msg = make_sms() c = CaptchaStore() # 把验证码存入session request.session['account_safety'] = sms_msg[1] # 存库 c.response = sms_msg[1] c.challenge = phone c.save() result = {'status': 1, 'msg': '验证码已经发送,请注意查收'} # 测试 可不发短信 去CaptchaStore中查看验证码 if not settings.DEBUG: send_sms([phone], sms_msg[0]) result = { 'status': 1, 'key': c.hashkey, } return JsonResponse(result) else: result = {'status': 0, 'msg': '请输入正确的电话号码'} return JsonResponse(result) else: raise Exception("请求异常") except Exception, e: log.exception("send_validate_code_new raise, Error:%s" % e) result = {'status': 0, 'msg': str(e)}