如何在服务器端限制一分钟之内不能重复发送短信

简介:

直接上代码:

Java代码   收藏代码
  1. String lastSendSMSTime=getKeyCache(request, response, mobile);  
  2.         if(StringUtil.isNullOrEmpty(lastSendSMSTime)){  
  3.             saveKeyCache(request, response, mobile, String.valueOf(DateTimeUtil.getCurrentTimeSecond())/*1436319245*/);  
  4.         }else{  
  5.             long lastSendSMSTimeSecond=Long.parseLong(lastSendSMSTime);  
  6.             long currentTimeSecond=DateTimeUtil.getCurrentTimeSecond();  
  7.             int delter=(int) (currentTimeSecond-lastSendSMSTimeSecond);  
  8.             if(delter>60){//TODO  写入配置文件  
  9.                 saveKeyCache(request, response, mobile, String.valueOf(DateTimeUtil.getCurrentTimeSecond()));  
  10.             }else{//a00001  
  11.                 return new BaseResponseDto(false"a00001""一分钟之内不能重复发送手机短信").toJson();  
  12.             }  
  13.         }  

 

第一次发送时lastSendSMSTime 为null,于是设置当前时间A

第二次访问时,lastSendSMSTime 不为null,获取其值,为时间A;

同时获取当前时间B,计算时间A,和时间B 的差量delter.

业务逻辑是:拿delter和60进行比较,如果delter>60,说明两次发短信的时间相差60秒,则允许发送,会重置时间为当前时间;

若delter<=60秒,则允许发送,并且不会重置时间

 

相关文章
|
测试技术 Linux 数据安全/隐私保护
Linux系统分别调用不同邮件服务器465端口发送短信
环境:centos7.2 python2.7.6 简介:通过编写的Python 脚本实现调用不同的邮件服务器465 端口发送短信。共四个。 脚本内容如下,具体内容不做介绍,主要是讲解如何通过该脚本实现上述需求。
5493 1
|
5月前
|
云安全 安全 API
阿里云——OpenAPI使用——短信服务
阿里云——OpenAPI使用——短信服务
255 0
|
21天前
|
数据采集 监控 安全
阿里云短信服务+图形认证,有效降低验证码盗刷概率
阿里云短信服务+图形认证服务,有效降低验证码盗刷概率。
阿里云短信服务+图形认证,有效降低验证码盗刷概率
|
4月前
|
存储 小程序 前端开发
【微信小程序 - 工作实战分享】1.微信小程序发送手机短信验证码(阿里云)
【微信小程序 - 工作实战分享】1.微信小程序发送手机短信验证码(阿里云)
319 0
|
21天前
|
存储 NoSQL Java
|
2月前
|
数据采集 存储 监控
99%成功率背后:阿里云短信服务有何优势?
为什么短信会发送失败,如何提高短信发送成功率,本文将为您介绍短信发送成功率和阿里云短信服务如何保障企业短信稳定送达等相关知识。
102 1
99%成功率背后:阿里云短信服务有何优势?
下一篇
无影云桌面