话不多说,上代码!!!
HttpSession session = request.getSession();
String id = session.getId();
if(ObjectUtils.isEmpty(session.getAttribute(id))){
session.setAttribute(id,System.currentTimeMillis());
}else if (session.getAttribute(id) != null) {
long lastSendTime = (Long) session.getAttribute(id);
if ((System.currentTimeMillis() - lastSendTime) < 10000) {
LOGGER.warn("用户点击短信发送的间隔在10s之内,已经被阻止发送");
return Utils.getFailJson("短信发送较频繁,请稍后重试。");
}
session.setAttribute(id,System.currentTimeMillis());
}
//发送短信...
本文介绍了一种防止短信被频繁发送的策略,通过利用HttpSession记录用户请求的时间戳,确保两次短信发送间隔至少为10秒,有效防止了短信刷屏。
473

被折叠的 条评论
为什么被折叠?



