对于 REST 风格 Web 服务中的资源批处理操作,存在哪些经过验证的设计模式?
我试图在理想和现实之间找到一个平衡点在表现和稳定性方面。我们现在已经有了一个 API,其中所有操作要么从列表资源(即: GET/user)检索,要么在单个实例(PUT/user/1、 DELETE/user/22等)上检索。
在某些情况下,您希望更新整个对象集的单个字段。来回发送每个对象的整个表示形式来更新一个字段似乎非常浪费。
在 RPC 样式的 API 中,您可以有一个方法:
/mail.do?method=markAsRead&messageIds=1,2,3,4... etc.
这里的 REST 等价于什么?或者偶尔妥协一下也没关系。添加一些真正提高性能的特定操作是否会破坏设计,等等?现在所有情况下的客户端都是 Web 浏览器(客户端的 javascript 应用程序)。