json - 如何 PUT 到 JSON 字符串 REST-API 中数组的特定索引?
问题描述
使用 REST API 时,如何发送一个 JSON 字符串,指定 PUT 到商店数组的索引 [0]?这可能在 JSON 字符串中吗?
这不是关于如何在 Javascript 中选择数组索引的问题。
{
"Shops": {
"Shop": [
{
...stuff
"reorderLevel": "3" // Put to index [0] of the Shop array?
},
{
...stuff
}
]
}
}
解决方案
使用 REST API 时,如何发送一个 JSON 字符串,指定 PUT 到商店数组的索引 [0]?
你会做以下事情之一
使用 PUT,您将使用您想要进行的更改创建整个资源的新表示,然后在单个请求中将整个内容发送到服务器
或者
您将计算一个补丁文档,它仅描述您想要对文档进行的更改,然后向服务器发送一个 PATCH 请求,其中包含您所做的更改的表示。
application/merge-patch+json和application/json-patch+json是最常见的两种格式。
据我所知,合并补丁不支持对数组的单个元素的引用:
如果补丁不是对象,结果将始终是用整个补丁替换整个目标。
JSON-patch 使用JSON 指针来指定元素,并且针对特定数组元素有 JSON 指针语法,因此您应该能够做到这一点。
推荐阅读
- hibernate - 一对一映射说明
- maven - 自定义 Maven 插件在生命周期后期向其他插件公开值的正确方法是什么?
- c - Make 似乎忽略了我的 CFLAGS 和 LDFLAGS
- java - 具有三个可从方法调用的参数的 Java 函数
- php - Laravel 无法为用户模型创建策略
- python - 导入两个同名的python包在同一个项目中使用
- php - 如果包含,如何从字符串中删除文本
- java - 如果我在 Java 中查询,如何组合来自 mssql 数据库和 mysql 数据库的数据?
- c# - 将 XML 数据作为参数传递给来自 List 的字符串 SQL Query c#
- php - Laravel eloquent 中的循环命令