restapi中的命令建模
我正在寻找一种很好的方法来对在RESTAPI中更改资源状态的命令进行建模。我浏览了互联网,找到了各种各样的解决方案,我想得到这些方案的优缺点的反馈 考虑一个具有“isActive”状态的资源。如果资源的当前“isActive”状态为false,则可以使其处于活动状态,反之亦然 解决方案:restapi中的命令建模,rest,api-design,Rest,Api Design,我正在寻找一种很好的方法来对在RESTAPI中更改资源状态的命令进行建模。我浏览了互联网,找到了各种各样的解决方案,我想得到这些方案的优缺点的反馈 考虑一个具有“isActive”状态的资源。如果资源的当前“isActive”状态为false,则可以使其处于活动状态,反之亦然 解决方案: 客户机将|补丁放入具有新状态的资源 优点:非常简单 缺点:没有很好的方法来提供超媒体来向客户端指示资源可以被激活/停用 客户端发布到资源/{id}/activate。(无需正文。) 优点:超媒体驱动。直觉
- 优点:非常简单
- 缺点:没有很好的方法来提供超媒体来向客户端指示资源可以被激活/停用
- 优点:超媒体驱动。直觉的
- 缺点:不是真正的RESTful(因为动作是在Uri中传递的)
- 优点:超媒体驱动
- 缺点:不像选项2那样直观
- 优点:超媒体驱动
PUT/gists/{id}/star
和DELETE/gists/{id}/star
将此方法应用于您的案例:
- 正在激活:
PUT/resources/{id}/active
- 停用:
DELETE/resources/{id}/active