批处理UPDATE操作的最佳实践

时间:2019-03-06 19:28:16

标签: rest crud

对于我的应用程序,我希望CREATE和UPDATE端点支持单次插入和批量插入/更新。

我知道,通常这些URI的标准对于POST是/{resource},对于PUT是/{resource}/{id}

POST端点对于批处理操作将正常工作。只需简单检查接收到的数据是否为数组格式即可。但是,对于PUT,这是行不通的,因为URI需要指定资源的ID。

我可以将PUT URI更改为/{resource},但这是不好的做法吗?为CREATE和UPDATE而为单个操作和批处理操作设置单独的端点会更好吗?

1 个答案:

答案 0 :(得分:1)

CRUD是休息的支柱

  1. 创建-具有全新的资源结构(几乎总是批量处理) 通过POST / {resource}-仅批量处理无过滤器

  2. 检索-每个id /批次选择创建的资源都可以通过 GET / {resource}或GET / {resource} / {id} 需要同时拥有

  3. 更新-主要通过ID过滤器进行更新 PUT / {resource} / {id}主要可以通过过滤器

  4. 删除-再次删除整个批次/ id 删除/ {资源}或删除/ {资源} / {id} 需要同时拥有

因此,它与where末尾的Rest's子句类似,除了create。您需要使用单独的端点来简化使用,因为Rest Apis主要提供数据,而没有ModelAndView结构页面。因此,将每个端点分开使用是更好的做法