【问题标题】:Multiple ID's in REST endpointsREST 端点中的多个 ID
【发布时间】:2017-11-28 09:28:12
【问题描述】:

来自 Wordpress 背景,我对使用 REST API 的了解非常有限。我已经开始使用JSON server(虚拟本地REST API)来学习细节。

查看文档,似乎没有任何方法可以一次性删除、更新或发布多个项目? PATCHPOSTPUTDELETE 方法都需要一个带有一个尾随 ID 的端点,例如 /posts/1。我已经尝试在 url 中发送多个 ID,即 ?id=1&id=2 以及作为请求正文的一部分,但似乎都不起作用。

这就是典型的 REST API 的工作方式吗?如果是这样,这是否意味着我必须循环遍历 ID 并为每个请求发送多个请求,还是我错过了重点??

【问题讨论】:

  • 为什么不传递 ID 列表?
  • 你想达到什么目的?您不能在 url 中发送相同的查询参数两次。它将被覆盖。您的查询参数的键需要不同
  • 说例如,我想DELETE 与 ID 的 1,2, 3, 4, 在/todos 中,我将如何使用 fetch 发送这些 ID?我试过的东西不起作用:fetch('http://localhost:3000/todos?id=1&id=2&id=3&id=4', {method: 'DELETE'});fetch('http://localhost:3000/todos', { method: 'DELETE', body: [{id:1}, {id:2}, {id: 3}, {id: 4}] } });
  • 你用什么做后端? .NET?

标签: javascript rest fetch json-server


【解决方案1】:

使用 REST,您通常不需要批量操作,除非您要删除集合。 POST 请求通常将单个实体插入到集合中,但这并不意味着您不能构造端点以接受要插入到集合中的实体数组。当我设计一个用于发布新资源的 RESTful 端点时,我只接受一个实体。我让客户端并行执行多个 POST 请求,以减少创建实体列表所需的时间。

【讨论】:

    猜你喜欢
    • 2019-11-12
    • 1970-01-01
    • 2018-02-28
    • 2016-04-26
    • 2016-01-07
    • 2021-09-18
    • 2019-07-26
    • 2021-06-03
    • 1970-01-01
    相关资源
    最近更新 更多