springboot 防抖操作

大佬的代码:看这里

原理:

通过aop切面编程,在调用接口前缓存接口信息,将信息缓存到redis中,在规定时间内重复调用接口,会被拦截请求

有个地方感觉不太合理,在使用中我将其修改了

java 复制代码
	//前略
public class PreventAop {
	
	public String getToken(){
		//该方法仅作参考
		return sra.getRequest().getHeader("Authorization");
	}
	
private void defaultHandle(String token, Prevent prevent,String methodFullName) throws Exception {
		
        long expire = Long.parseLong(prevent.value());
		//此处改为将token作为凭据,避免不通账号调用同一接口导致请求被拦截
        String resp = redisUtil.get(methodFullName+token);
        if (StringUtils.isEmpty(resp)) {
            redisUtil.set(methodFullName+token, requestStr, expire);
        } else {
            String message = !StringUtils.isEmpty(prevent.message()) ? prevent.message() :
                    expire + "秒内不允许重复请求";
            throw new BusinessException(message);
        }
    }
}
相关推荐
高频因子挖掘机6 小时前
QuantDash 明明安装成功,为什么 Python 还是无法 import?
后端·github·api
Pniubi13 小时前
HashMap的扩容和树化边界
java·开发语言
Mikko713 小时前
用 Java 复刻了高中时在塞班上玩的「熔岩矿车」:纯 Swing、零依赖、没有一张图片,一个 jar 双击就能玩
java·游戏开发·swing
知了学历孙老师13 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
Java爱好狂.14 小时前
Java初学者如何一周速通SpringBoot!
java·spring boot·后端·spring·高并发·架构师·java面试
秋饼15 小时前
LLM API密钥动态轮换实战:Spring Vault + Spring AI + 多Provider路由
java·ai·技术分享·后端开发
马良神笔16 小时前
2026 年Rag最近技术前沿总结
后端·python·django
程序猿DD16 小时前
同样10美元,OpenDesign和Command Code的DeepSeek V4.1 Flash额度到底有多少?
后端
福兮说16 小时前
JSON 格式正确,数据就可靠吗?我用一份自编配置检查类型与空值
java·前端·json
高频因子挖掘机16 小时前
A股量化从日线升级到5分钟线:数据量增加后最先暴露哪些工程问题?
后端·github·api