用一张图了解PUT和POST的区别 – 作者:Mr一凡先生

一、POSTPUT的区别

两种请求最大的不同之处就在于是否满足幂等性

幂等性(idempotent、idempotence):幂等是一个数学与计算机学概念,常见于抽象代数中。在编程中一个幂等操作的特点是执行多次或1次,其影响是相同的。

比如:
GET:客户端请求多次或1次,对请求的资源产生的影响是相同;
DELETE:删除多次或1次,其删除的数据范围都是相同的,影响是相同的;
PUT:将A值更新为B值,执行多次其最终结果仍是B值;

图片[1]-用一张图了解PUT和POST的区别 – 作者:Mr一凡先生-安全小百科

二、RESTful API设计中POSTPUT的使用场景

在开发中如果不遵守RESTful API 的设计规范会把POST的职能由“新增”,扩展到支持“新增、更新、删除”。日常开发中执行CRUD时我们应该遵循以下规则:

请求类型 描述
GET 读取(幂等)
POST 新增
PUT 更新(幂等)
PATCH 更新,通常是部分更新
DELETE 删除(幂等)

三、如何设计符合幂等规范的API?

使用GET与PUT的幂等性设计一个支付订单款的流程:

1623401088_60c3228052e3a29589bd3.png!small?1623401088863
————————————————
原文链接:https://blog.csdn.net/weixin_36146275/article/details/105630166

来源:freebuf.com 2021-06-11 16:55:28 by: Mr一凡先生

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论