防止URL被连续点击。

在最近的项目中遇到了一个问题:

项目提供出去的url链接被用户快速连续点了之后 偶尔会出现重复调用的情况。(或者用户点了一下之后,由于网络原因或者程序响应原因导致反应慢,于是用户返回上一层再次进行点击)。

注:如果是按钮的话,可以通过设置按钮的失效防止连续点击。

为了防止该问题的产生,于是有了一个思路:

 可以让用户点击的url链接被限制为几秒内不能重复点击。


所以可以使用缓存技术,将url路径和用户的信息(或者是会话id)绑定,做唯一键,存入缓存中,并设置过期时间5s,每次访问该url时,先判断该缓存是否存在,如果存在那么就可以视为用户在连续点击,给予一个友好的提示,防止该问题的出现。


在java程序中,可以使用注解开发。

编写一个注解,其中的逻辑是如上所述,再将该注解加到需要防止连续调用的请求方法上即可。



评论

© zqq_life | Powered by LOFTER