手机短信验证码发送频繁请求的限制

概要

手机短信发送频繁请求的限制

内容

手机短信发送,为了避免被人恶意的频繁请求我们短信,所以一般我们都在短信发送的时候我们都要做一个短信请求发送的限制

本章准备用缓存来做请求时间的限制,如下我们的html代码:

    <div class="container">
        <input type="text" name="verifyCode" id="verifyCode" />
        <input type="button" id="verifyCodeSend" value="获取验证码" />
    </div>  

接着,如下我们的手机短信请求处理接口:

try
            {
                string phone = Request["phone"];
                if (String.IsNullOrEmpty(phone))
                    return Json(new { errcode = 1001, errmsg = "手机号不能为空" }, JsonRequestBehavior.AllowGet);
                Random random = new Random();
                string smsCode = random.Next(1000, 9999).ToString();
                if (CacheHelper.GetCache("Sms_" + phone) != null)
                {
                    if (CacheHelper.GetCache("Interval_" + phone) != null)
                    {
                        //CacheHelper.SetCache("Sms_" + phone, null);
                        return Json(new { errcode = 1001, errmsg = "验证码请求过于频繁,请稍后再试" }, JsonRequestBehavior.AllowGet);
                    }
                }
                else
                {
                    CacheHelper.SetCache("Sms_" + phone, smsCode, DateTime.Now.AddMinutes(5), Cache.NoSlidingExpiration);  //缓存短信验证码
                    CacheHelper.SetCache("Interval_" + phone, smsCode, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration);  //缓存请求验证码的请求间隔时间
                }
                WebRequestHelper.GetHtml(String.Format(SMS_REQUEST_WEBSITE, smsCode, MESSGAES_CONTENT));
                return Json(new { errcode = 1, errmsg = "发送成功" }, JsonRequestBehavior.AllowGet);
            }
            catch (Exception ex)
            {
                return Json(new { errcode = 1110, errmsg = ex.Message }, JsonRequestBehavior.AllowGet);
            }

转载于:https://www.cnblogs.com/bestfriends/p/sms-request-limit.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值