你能否提供一个RESTful API调用(使用HTTP协议)的例子,它同时是非幂等和安全的(甚至存在类似的东西)?
为了详细说明这一点,在阅读Hypermedia-Oriented Design时,我遇到了描述每个过渡的4个可供性方面:安全性,幂等性,可变性和颠覆性。另外,我遇到了a table,它通过这些方面描述了HTTP动词,它是这样的:
---------------------------------
HTTP Method Idempotent Safe
---------------------------------
OPTIONS yes yes
GET yes yes
HEAD yes yes
PUT yes no
POST no no
DELETE yes no
PATCH no no
---------------------------------
我的直觉告诉我,所有安全方法也是自动幂等的(但反之亦然)。我想一劳永逸地确认或反驳这一点。
提前感谢您的答案。
答案 0 :(得分:0)
安全方法 - 不修改任何内容的方法 - 根据定义是幂等的。由于它没有改变任何东西,无论你多少次调用它都会产生相同的效果(即无效)。
答案 1 :(得分:0)
是。所有安全方法也是幂等的,但它们指的是RESTful API的两种不同(但相关)的特性。
安全方法调用(不会修改服务器上资源状态的调用)可以由客户端多次发出,而不会影响服务器的状态(幂等性的定义)。