gpt4 book ai didi

rest - 如何通过 REST API 更新多个项目的顺序?

转载 作者:行者123 更新时间:2023-12-04 08:48:35 25 4
gpt4 key购买 nike

我正在处理 用于导航菜单项列表的 REST API ,几乎用于学习目的。到目前为止,API 中的所有内容都非常简单,因为我只需要通过经典的 /collection/{id} 修改单个项目。东西。

但现在我想更改存储在 order 中的列表项的顺序领域我的数据库当然还有 我不想为每个菜单项做一个请求。

那么什么是合适的方式/常见的这样做的最佳实践?

我可以想象发送一个 PUT请求到 /collection使用发送数据中的 id-order 键值对,但 Laravel(我用来构建 API)不允许这样做。我当然可以绕过这个限制,但我想这是不允许的。

另一个想法是发送 PUT请求到 /collection/{ids}使用逗号分隔的 ID 列表,但为此,我还必须发送 ID 的键值列表及其顺序值,这看起来非常多余,因此也有点脏。

那么实际上最好的方法是什么?

最佳答案

我建议你定义一个带有资源路径的新路由:/collection/reorder。

这允许使用方法 POST 发送它具有新位置的元素列表。内容看起来像这样:

{
"element1": 4,
"element2": 1,
(...)
}

“element1”是元素的标识符和相应的值,即它的新顺序。

您会注意到,您需要发送到此方法的数据格式可能取决于您在 UI 中使用的工具重新排序列表(例如,用于拖放)。

希望能帮助到你。
蒂埃里

关于rest - 如何通过 REST API 更新多个项目的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28007852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com