我已经在WebAPI项目中非常平稳地实现了CRUD功能。我现在正在尝试实现对象的归档(不是完全删除)-如果只有一个ARCHIVE HTTP方法。

我看到两个选择:

1)将isArchived作为每个可归档实体的属性,即使归档与请求无关,也必须将其包含在PUT和POST请求中。归档实体将是在isArchived设置为true的情况下调用PUT /api/object/id的问题。导线上似乎笨重但安静。

2)使用不需要正文的类似RPC的url,例如PUT /api/object/id/archive。似乎是最有效的,但并非令人不安。

在“通过api调用归档我的资料”空间中,每个人都在做什么?

最佳答案

如果您始终归档特定资源而从不删除它,那么我将重新使用DELETE来实际归档。如果您确实需要区分删除和存档,我可以

GET /foo/33

200 OK
<foo id="33">blah</foo>


POST /archive
<foo id="33">blah</foo>

201 Created
Location: http://example.org/archive/foo/33


要不就

POST /archive?target=http://example.org/foo/33

201 Created
Location: http://example.org/archive/foo/33

关于rest - Web API中实体的RESTful归档,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16201905/

10-11 23:59