接口测试思路-接口幂等

接口幂等是指多次相同请求不会改变系统状态。区别于防止重复提交,幂等关注于服务端应对重复请求的处理。实现策略包括:按钮防重、token机制、PRG模式、唯一序列号、唯一索引、乐观锁和缓冲队列等。
摘要由CSDN通过智能技术生成

接口测试思路-接口幂等

什么是接口幂等

例如:

1.电商平台中的支付接口,针对同一个订单只能支付一次,且不能因为多次提交支付请求(因网络卡顿、延迟等)就多次扣款

2.电商平台中的订单创建接口,例如从购物车中勾选指定几个商品后,重复点击去结算,只会创建一个订单,而不会同时创建多个订单,同理,库存扣除逻辑也是如此。

3.微信中的抢红包,抢一次就不能再抢了,不会因为多次点击,而多次获取同一个红包里的金额

幂等原先是数学中的一个概念,指的是进行1次变换和N次变换产生的效果相同,在接口中可以理解为:以相同的请求调用同一个接口一次或者多次,其产生的效果是一致的。

接口幂等与防止重复提交的区别:

​ 区别在于针对的阶段不一样,防止重复提交是在客户端限制用户多次重复提交信息,例如:注册页面/发送验证码/提交订单按钮等。而幂等针对的是重复请求已经发生或者无法避免的情况下,采用技术手段来保障这些重复请求不会给系统带来负担。

实现接口幂等的几种方案

解决办法分为两个方向,一个方向是客户端防止重复调用,一个是服务端进行校验。当然,客户端防止重复提交并不是绝对可靠的,优点是实现起来比较简单。在我们设计幂等接口时重点关注新增接口更新接口。因为查询和删除操作天生是幂等的(根据id查询和根据id删除多次对系统的影响是一致的),不需要我们提供额外的技术手段来保证幂等性。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值