概念
接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用。
那么如何设计接口才能做到幂等呢?常见的两种实现方案:
1. 通过代码逻辑判断实现:比如判断状态是否一致或者其它条件进行判断
2. 使用token机制实现:请求携带token,请求成功时首先执行删除redis中的token,
如果成功,说明请求是一致也就是只请求了一次,接下来继续执行业务代码,最后更新token并返回;
如果失败,说明token已发生改变,该token已被第一请求“消费”了,不执行业务代码,更新token,直接返回。
结论
推荐使用token的方式