我正在尝试决定应该使用 PUT 还是 POST 的 Http 方法。
在查看 StackOverlflow 上的一些帖子时,我可以看到 this邮政。
帖子中的答案之一说
PUT is idempotent, so if you PUT an object twice, it has no effect. This is a nice property, so I would use PUT when possible.
有人可以帮我举个例子吗?假设我有一个场景,我试图创建一个学生,其条目将在 RDBMS 的 Student 表中传递。
所以在这里,如果我一次又一次地尝试放置该条目,会不会有任何效果?
最佳答案
在 PUT 中,您正在设置资源的所有值,因此当 PUT 完成时,您可以确切地知道资源的状态。如果您等待一周并再次调用您的 PUT,您仍然确切地知道资源的状态。
相比之下,POST 不是幂等的——您只能 POST 值的一个子集。因此,如果您今天调用 POST,等待一周,然后再次进行相同的 POST 调用,您将不知道资源的状态 - 有人可能更改了您未在 POST 中设置的值。
幂等意味着无论何时或以何种频率进行调用,资源的最终状态都完全相同。
DELETE 和 GET 也是幂等的。
关于rest - RESTful Web 服务中的 PUT 方法幂等是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18485621/