我正在为我的web项目(PHP)设计一个API,但是在用属性对资源之间的关系进行建模时遇到了麻烦。我想得到一些关于如何进行的意见。
资源:
)
关系:
如何更新关系的“私有”属性?
现在,您必须向./api/ user /{userId}发送PUT请求,包括该用户的所有关系,包括更新的属性:
(名称可以为空->,不更新)
:
- Dog.
- ID : DogB.
- Private: No. (Updated)
我对这种方法感到不舒服,因为我认为只有已经更改的信息才需要发送更新。因此,我现在的想法是添加对只向./api/user/{userId}发送更新关系的支持:
在我开始工作之前,我非常希望得到一些反馈。也许还有其他更好的方法来处理资源之间的关系?
发布于 2011-07-29 15:33:32
这样做违反了REST服务是幂等的原则。这意味着您应该能够发送两次相同的操作,而不需要使用第二个操作来更改资源。
我把这个关系作为一个单独的资源来处理: Create/Update将是PUT ../api/users/{userId}/dogs/{dogId}和Private: Yes/No。删除关系将由DELETE ../api/users/{userId}/dogs/{dogId}处理。
https://stackoverflow.com/questions/6875312
复制相似问题