HTTP请求方法及幂等性

幂等性

  • Http幂等方法是指无论调用这个url多少次,都不会有不同的结果的http方法。
  • 幂等性指的是作用于结果而非资源本身。可能某个方法可能每次会得到不同的返回内容,但并不影响资源,这样的也满足幂等性,例如get服务器当前时间。

HTTP GET方法

  • 用于获取资源,不管调用多少次接口,结果都不会改变,所以是幂等的。
  • 若接口用于获取当前时间,它获取的是服务器当前时间,本身不会对资源产生影响,因此满足幂等性。

HTTP POST方法

POST是一个非幂等方法,它会对资源本身产生影响,每次调用都会有新的资源产生,因此不满足幂等性。

HTTP PUT方法

PUT方法直接把实体部分数据替换到了服务器的资源,但我们多次调用它时,只会产生一次影响,即有相同结果的HTTP方法,所有满足幂等性

HTTP PATCH方法

PATCH方法是非幂等的,因为它提供的实体需要根据程序或其他协议的定义,解析后在服务器上执行,以此来修改服务器上的资源。也就是若反复提交,程序可能执行多次,对服务器资源可能造成额外影响。

PATCH

在HTTP协议中,请求方法PATCH用于对资源进行部分修改。
连续多个的相同请求会产生不同的效果。
PATCH提供的实体则需要根据程序或其它协议的定义,解析后在服务器上执行,以此来修改服务器上的资源。换句话说,PATCH请求是会执行某个程序的,如果重复提交,程序可能执行多次,对服务器上的资源就可能造成额外的影响。

HTTP DELETE方法

DELETE方法用于删除资源,会将资源删除,但调用一次和调用多次的影响是相同的,因此也满足幂等性。

参考:
https://www.jianshu.com/p/178da1e2903c
https://www.jianshu.com/p/362fd4b23c83

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值