在REST中删除或创建实体之间的“Has a”关系

时间:2016-11-18 23:40:18

标签: rest

我有一个目标池实体,可以有许多目标实体。如何将REST URL请求添加到目标池或从目标池中删除目标。

现在我正在使用

/ destinationpool / {destinationpool-name} / add / {destination-name} 将目标添加到目标池

/ destinationpool / {destinationpool-name} / delete / {destination-name} 删除 来自目的地池的目的地

两者都是PUT请求

1 个答案:

答案 0 :(得分:1)

如果您想要真正成为RESTful,那么您的CRUD操作应该由您的http动词指示,而不是您的网址。我倾向于将输入作为url参数的一部分,以便模仿标准函数调用,其中包含函数定义和参数。

创建(post vs put

[DELETE]
/destinationpool/{destinationpool-name}/destinations
(url)..../destinationpool/{destinationpool-name}/destinations?destination-name=<name>

删除

WHERE

当您阅读上述内容时,很明显您正在将某些内容放入目标池的目标关系中(或从中删除某些内容)。

作为旁注 - 由于唯一性,拼写,大写等等,名称是危险的.Ids要好得多。