当前位置: 首页 > news >正文

springboot 防抖操作

大佬的代码:看这里

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

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

	//前略
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);}}
}
http://www.lryc.cn/news/336964.html

相关文章:

  • Playwright录制脚本 —— web自动化测试!
  • 什么是工业级物联网智能网关?如何远程控制PLC?
  • AI推介-大语言模型LLMs论文速览(arXiv方向):2024.04.05-2024.04.10
  • javascript:call()、apply()、bind()的区别和使用
  • ubuntu系统安装systemc-2.3.4流程
  • Java开发中的entity、vo和pojo
  • 通过IPV6+DDNS实现路由器远程管理和Win远程桌面控制
  • 数据湖/数据仓库
  • 万兆以太网MAC设计(2)MAC_RX模块
  • D. Solve The Maze Codeforces Round 648 (Div. 2)
  • CPU核心数、线程数都是什么意思?
  • 每日一篇 4.12
  • 鸿蒙南向开发:【智能烟感】
  • 【主题广|检索稳定】2024年生态工程与农业科技国际会议 (EEAT 2024)
  • 代码随想录算法训练营第三十八天|509. 斐波那契数、 70. 爬楼梯、746. 使用最小花费爬楼梯
  • 07-app端文章搜索
  • ✔ ★Java项目——设计一个消息队列(二)
  • Java语言实现生产者/消费者问题
  • bugku-web-file_get_contents
  • Python数据处理和常用库(如NumPy、Pandas)
  • [SystemVerilog]Simulation and Test Benches
  • lightgbm-安装失败(解决方案)
  • halcon图像相减算子sub_image
  • final、finally 和 finalize 有什么区别?
  • 智能运维场景 | 科技风险预警,能实现到什么程度?
  • 中颖51芯片学习3. 定时器
  • [python] Numpy库用法(持续更新)
  • vue快速入门(十七)v-model数据双向绑定修饰符
  • 2024-2025年申报各类科研项目基金撰写及技巧
  • Python基于Django的微博热搜、微博舆论可视化系统,附源码