1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > python 实现发送手机短信验证码后台方法

python 实现发送手机短信验证码后台方法

时间:2024-05-03 12:51:38

相关推荐

python 实现发送手机短信验证码后台方法

1、生成4位数字验证码

def createPhoneCode(session):chars=['0','1','2','3','4','5','6','7','8','9']x = random.choice(chars),random.choice(chars),random.choice(chars),random.choice(chars)verifyCode = "".join(x)session["phoneVerifyCode"] = {"time":int(time.time()), "code":verifyCode}return verifyCode

2、发送给外部短信接口(post方式)

def sendTelMsg(msg, phoneID):SendTelMsgUrl="/jk.aspx"params = {"zh":"china", "mm":"china@10086", "hm":phoneID,"nr":msg,"sms_type":88}postData=urllib.urlencode(params)req = urllib2.Request(SendTelMsgUrl, postData)req.add_header('Content-Type', "application/x-www-form-urlencoded")respone = urllib2.urlopen(req)res = respone.read()return res

其中session参数是django urls.py 后台方法 以request.session传入

3、前端js

$("button[name=getVerifyBt]").bind("click", function(){var self = this;var userPhoneEl = $("input[name=phoneNum]");var userPhone = $.trim(userPhoneEl.val());if (userPhone == ""){alert("请填写号码!");return;}$.get("/getPhoneVerifyCode/"+userPhone + "/").success(function(msg){console.info(msg);var ddEl = $(self).siblings("dd.showTag");if(msg == "ok"){ddEl.find("span").hide();ddEl.find("span[name=success]").show();}else{ddEl.find("span").hide();ddEl.find("span[name=error]").show(); }}).error(function(msg){console.info(msg);});var step = 60;$(this).attr("disabled", true);$(this).html("重新发送"+step);var interThread = setInterval(function(){step-=1;$(self).html("重新发送"+step);if(step <=0){$(self).removeAttr("disabled");$(self).html("获取验证码");clearInterval(interThread);}}, 1000);});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。