如何在不实际执行HTTP DELETE操作的情况下对其进行建模

时间:2018-09-13 08:48:18

标签: rest api http httpapi

对于HTTP API设计,我需要允许用户具有获取资源上的HTTP DELETE调用可能触发的更改列表的能力。也就是说,如果资源是一对多关系中的父级,则我需要使用子级列表进行回复。 其背后的想法是,客户可以在实际进行更改之前使用此信息来确认破坏性更改。

因此,如果实际行动很简单 HTTP DELETE /resources/uuid

HTTP DELETE /resources/uuid?simulate=true 是可以接受的,在这种情况下,什么是合适的http状态代码?

我有兴趣分两个步骤来了解这种DELETE方案的最佳方法是什么。

1 个答案:

答案 0 :(得分:5)

我认为这种方法没有问题。您可能要考虑的一件事是,当您需要“模拟”多个API时,可能值得考虑一种通用方法。

您可能有类似的东西

DELETE /dryRun/resources/uuid

OR

DELETE /resources/uuid/dryRun

将其作为路径参数而不是查询参数的优点是关注点分离。通过这种方法,您将避免在代码中使用if-else