接口的幂等性

接口幂等性定义以及场景

接口幂等性

理解

接口幂等性场景举例:
比如提交一个表单到后台插入一个数据,因为浏览器卡顿我就一直点提交按钮,如果要确保接口的幂等性,就需确保多次点击提交实际只有一次是有作用的,数据最终也只插入了一条。说白了就是多次操作和一次操作的效果是一样的。
增删改查中,“查”是天然幂等的,因为“查”没有改变数据库,只是查看,所以不管你用同一个查询接口查询多少次,结果都是一样的(这里的一样指的是没有其他接口去修改的前提)

接口幂等性的实现(举例)
表单重复提交,token+缓存实现

参考

  1. 后端提供一个产生token的接口(设为A接口),针对有幂等性要求的接口(假设叫B),需要每次请求前先访问A获取token,
  2. 把产生的token,缓存下来,单机服务直接保存到jvm就行,可以自带的容器collection存,分布式服务直接存到redis
  3. 在请求的时候携带token,如果是第一次处理,需要把缓存的token删除掉,如果有重复的请求过来时去缓存查找token就查不到了,查不到就说明不是第一次处理请求。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值