You need to enable JavaScript to run this app. C# RestSharp 如何为JSON请求体添加数组方括号适配API要求
优惠活动
大模型
产品
解决方案
定价
更多

C# RestSharp 如何为JSON请求体添加数组方括号适配API要求

问题根因

RestSharp的AddJsonBody方法会根据传入的对象类型自动完成JSON序列化,你当前传入的是单个Dictionary对象,序列化结果自然是无外层方括号的单对象格式,无法满足接口要求的数组结构。

可直接落地的修改方案
  • 初始化单条patch操作的字典对象,注意修正op字段值和接口要求匹配:
Dictionary<string, string> patchItem = new Dictionary<string, string>();
patchItem.Add("op", "replace");
patchItem.Add("path", "/PCF_AVALARAT");
patchItem.Add("value", ATC);
  • 将单个字典对象包裹为数组结构,再传入请求方法:
// 集合类型对象会被自动序列化为带外层方括号的JSON数组
// 如果需要同请求传递多条patch操作,直接把多个patchItem实例加到数组中即可
var requestBodyArray = new[] { patchItem };
request2.AddJsonBody(requestBodyArray);
注意事项
  • 不要手动拼接字符串给JSON加外层方括号,这种方式很容易因为特殊字符转义问题引发格式错误,依赖RestSharp自带的序列化逻辑生成数组结构是最稳定的方案。
  • 你原代码中op字段写的是"add",和接口要求的"replace"不匹配,就算请求体格式调整正确,字段值不对也会被接口校验拦截。

内容的提问来源于stack exchange,提问作者Brent Allison

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.12 07:36:03