相关疑难解决方法(0)

REST API - 在单个请求中批量创建或更新

让我们假设有两个资源Binder,并Doc具有关联关系意味着DocBinder自己站.Doc可能属于也可能不属于BinderBinder可能为空.

如果我想设计一个REST API,允许用户发送一个Docs 的集合,在单个请求中,如下所示:

{
  "docs": [
    {"doc_number": 1, "binder": 1}, 
    {"doc_number": 5, "binder": 8},
    {"doc_number": 6, "binder": 3}
  ]
}
Run Code Online (Sandbox Code Playgroud)

对于每个文档docs,

  • 如果doc存在则将其分配给Binder
  • 如果doc不存在,请创建它然后分配它

我真的很困惑这应该如何实现:

  • 使用什么HTTP方法?
  • 必须返回什么响应代码?
  • 这甚至适合REST吗?
  • URI怎么样?/binders/docs
  • 处理批量请求,如果一些项目引发错误但另一个项目通过该怎么办.必须返回什么响应代码?批量操作应该是原子的吗?

api rest

80
推荐指数
4
解决办法
8万
查看次数

以REST方式更新整个资源集合

我有一个REST URI用于资源列表,例如:

http://foo.com/group/users
Run Code Online (Sandbox Code Playgroud)

这些用户中的每一个都有一个序列号,我想公开一种方法,为集合中的所有用户重新编号这些值,并使访问列表的每个人都可以使用此更改.由于这是对整个集合的一个动作,我不知道如何实现这一点.

我可以设想一个类似于URL http://foo.com/group/users?sequence=normalize但是对于整个列表既不是PUT也不是POST真的有意义,除非我使用新数字作为消息数据提交整个集合.

如何以RESTful方式更新整个集合,而无需重新发送集合中的所有更新资源?

rest http

16
推荐指数
2
解决办法
2万
查看次数

标签 统计

rest ×2

api ×1

http ×1