问题标签 [json-patch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何将 ModelState 与 JsonPatchDocument.Applyto 一起使用
我在 Microsoft 文档和他们调用 JsonPatchDocument.ApplyTo(patchObject, ModelState) 的许多示例中看到,但我似乎无法让它以这种方式构建。我收到一个构建错误,提示“错误 CS1503 参数 2:无法从 'System.Web.Http.ModelBinding.ModelStateDictionary' 转换为 'System.Action'”
我引用的是 Microsoft.AspNetCore.JsonPatch v2.2.0,示例代码来自这里:
https://docs.microsoft.com/en-us/aspnet/core/web-api/jsonpatch?view=aspnetcore-2.2
java - 如何仅更新可能已经为空的某些字段(使用 JSON 补丁)
我正在尝试使用 json 补丁来更新PATCH
在我的应用程序中使用的对象。
我只想更新对象中的 2 个字段,它们可能null
在更新之前。
每次我尝试更新时,整个对象都会更新。
我该如何限制这个?
我尝试了多种方法。
杰克逊配置:
如何仅更新这些字段?
.net - JsonPatchDocument 可以使用 Attributes
我可以在我的对象上使用属性并仍然使用 JsonPatchDocument 吗?
目前,如果我有这个对象:
我只能在后请求和补丁请求中发送浮点数。
如果我添加一个属性:
我现在可以在后请求中仅发送 1 到 100 之间的浮点数。尽管在补丁中,即使我使用 FloatTest = 1000 进行补丁,ModelState 仍然有效。
无论如何要在 JasonPatchDocument 的 ApplyTo 函数中检查这一点,还是我错过了任何其他最佳实践?
asp.net-core - JsonPatchDocument is null after migration to .Net Core 3
I have a AspNetCore-WebApi-Project with several patch-operations, which worked fine with Core 2.2. After migration to Core 3 the [FromBody] JsonPatchDocument<T>
is null. My Get/Post-Methods are still functioning as expected.
This is one part of my Startup:
This is my Action:
This is the body-content:
Does anyone have an idea what is goung wrong here?
json - 基于两个 JSONSchema 为实例数据生成 JSONPatch
我搜索了一个允许从两个JSONSchema生成JSONPatch的工具。例子:
JSONSchema A:
JSON对象可以在哪里:
JSONSchema B(无年龄):
生成的 JSONPatch 应该是:
要在应用补丁后获取,对象:
有一些工具吗?
java - 有没有办法在 Wildfly 中禁用自动 JSON PATCH 应用程序
在 Wildfly 上使用HTTP-PATCH
JAX-RS 中的资源时(使用 14 和 18 测试),会发生一些自动魔术,使用 调用相同的资源路径GET
,应用来自 JSON-PATCH 的更改并使用结果调用实际方法。
有没有办法禁用这种行为(使#patchManual
工作)?
重现问题的代码:
c# - 获取没有旧值的 jsondiffpatch
我使用jsondiffpatch.net创建一个补丁来跟踪两个 json 对象之间的差异。我不需要使用在生成的补丁中使用“oldValue”的反向和取消补丁方法。
有没有办法在生成的补丁中只显示新值?
java - 为什么日期转换在 Spring 中对内容类型为 json-patch 的请求不起作用?
当我使用 json-patch 时,我收到“无法从类型 [java.lang.String] 转换为类型 [@javax.persistence.Column java.util.Date] for value '1999-12-20' ”,但是使用 json-merge-patch 进行 PUT、POST 或事件 PATCH 请求时,我没有收到此错误;
我正在使用带有 Spring Data Rest 的 Spring Boot 版本 2.1.8。
我有一个实体,其字段类似于以下(只有变量和列的名称不同):
当我向正文发出 JSON 合并补丁请求时,该字段按预期更新:
它还使用 POST 和 PUT 请求正确更新。
但是,如果我使用以下命令(和 Content-Type application/json-patch+json)发出 json-patch:
我收到上面提到的错误。
我实际上不需要解决方法,因为我为此使用了 JSON Merge Patch。
我想了解如何使适用于其他请求的转换也适用于 json-patch。
rest - 如何使用 JSON Patch 增加价值?
我们需要通过 REST API 更新计数器,并且我们使用 JSON Patch 进行 PATCH 调用,所以它应该是这样的:
{"op":"increment", "path":"/counter", "value": 1 }
问题是 JSON Patch 不支持这种类型的操作。ADD 操作应该只适用于数组,因此最接近的解决方案是使用 REPLACE 操作来替换计数器值,但是如果多个客户端同时尝试更新计数器,则可能会导致问题。
那么我们应该如何解决这个问题,添加一个像 increment 这样的自定义操作会有多大的错误呢?
arrays - 在单个 JSON Patch 操作中向数组添加多个值?
我有一个像这样的 json 对象:
如果我想将多个项目添加到内容数组(顺序无关紧要),我可以使用带有单行/操作的 json 补丁添加到它吗?
或者我是否必须为每个要添加的对象添加一行?
编辑:要清楚我想追加,而不是替换内容。