我试图建立一个RESTful web应用程序,其中我使用GET,POST,PUT和DELETE。 但我有一个关于在这个特定的应用程序使用DELETE问题。
一点背景知识第一:
我的web应用程序管理,它们也管理通用实体(和它发生,总是创建)中的另一个系统。 所以,我的web应用程序中,每个实体都将存储在数据库中一个独特的密钥。 但是,我们将访问他们通过URL的方式与其他系统的唯一密钥。
一个简单的例子说明这一点,我想。 就拿URL /entity/1
。 这将显示信息与其它系统 ID为1的实体,而不是我自己的系统。 事实上,在我的系统ID将被完全隐藏。 将有存取具有ID的实体没有URL方案1
在我自己的系统。
好了,现在我们知道我的web应用程序所采用的结构,让我们恢复到删除这些实体。
有会在我的系统中“删除”实体的方式,但我把引号,因为它实际上不会从数据库中删除它们。 相反,它会与防止它出现,当你去一个属性将它们标记/entity/1
。
正因为如此,我觉得我应该使用PUT
(以这种方式“删除”会幂等),因为我是从数据的角度来看,简单地设置属性。
因此,问题:请问RESTful方法具有高保真的数据(在这种情况下,很显然,我PUT
荷兰国际集团),或在应用程序中的数据的表示(在这种情况下,看来我DELETE
荷兰国际集团)?