java后台判断session短信防刷机制。

本文介绍了一种防止短信被频繁发送的策略,通过利用HttpSession记录用户请求的时间戳,确保两次短信发送间隔至少为10秒,有效防止了短信刷屏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

话不多说,上代码!!!

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());
}
//发送短信...
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值