在 REST API 中,代理向 /some-resource/666 发送 DELETE 请求
这应该足够了吗?或者他们应该发送资源 ID 以及版本(用于乐观锁定),以便他们可以确保他们正在删除他们读取的版本?
在 REST API 中,代理向 /some-resource/666 发送 DELETE 请求
这应该足够了吗?或者他们应该发送资源 ID 以及版本(用于乐观锁定),以便他们可以确保他们正在删除他们读取的版本?
这在很大程度上取决于上下文。
如果您的资源id是服务器生成的并且始终是唯一的(例如,它可能POST /some-resource返回一个新id的资源的 GUID 或 SQL 自动增量列),那么您当然不需要指定任何特定version的删除和DELETE /some-resource/{id}足够了。
如果您的资源id是客户端生成的或仅在当前现有资源中唯一(可重复),那么您可以version按照您的建议添加查询参数。
id值,你能否轻松地使它们始终唯一?如果是这样,请选择该解决方案而不是version参数 on DELETE。