1

在 REST API 中,代理向 /some-resource/666 发送 DELETE 请求

这应该足够了吗?或者他们应该发送资源 ID 以及版本(用于乐观锁定),以便他们可以确保他们正在删除他们读取的版本?

4

1 回答 1

1

这在很大程度上取决于上下文。

  • 如果您的资源id是服务器生成的并且始终是唯一的(例如,它可能POST /some-resource返回一个新id的资源的 GUID 或 SQL 自动增量列),那么您当然不需要指定任何特定version的删除和DELETE /some-resource/{id}足够了。

  • 如果您的资源id是客户端生成的或仅在当前现有资源中唯一(可重复),那么您可以version按照您的建议添加查询参数。

    • 但是你必须问的一个问题是:如果你有非唯一或可重复的id值,你能否轻松地使它们始终唯一?如果是这样,请选择该解决方案而不是version参数 on DELETE
于 2013-04-08T04:44:34.133 回答