You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Post API请求体字符串插值配置问题求助

问题解决:C#字符串拼接JSON请求体错误

错误原因

你手动拼接JSON时,字符串插值中的JSON大括号{}没有正确转义。C#字符串插值语法中,{和}是插值表达式的边界标记,直接写会被编译器识别为插值逻辑而非普通JSON字符,导致生成的JSON格式错误或编译报错。

解决方案

方案1:修正字符串插值的转义

将JSON的大括号用双大括号{{}}转义,确保编译器将其作为普通字符输出:

var strStartDateZulu = strStartDate + "Z";
return await MakeApiCallAsync("RequestFileAsync", string.Empty, HttpMethod.Post, 
    $"{{\"format\":\"csv\", \"compress\":\"false\", \"startDate\":\"{strStartDateZulu}\"}}", false);

方案2:推荐使用序列化生成JSON(更安全可靠)

避免手动拼接JSON,用匿名对象结合System.Text.Json序列化生成请求体,彻底杜绝格式错误:

// 定义请求体对象
var requestBody = new 
{
    format = "csv",
    compress = "false",
    startDate = strStartDate + "Z"
};
// 序列化为JSON字符串
var jsonBody = System.Text.Json.JsonSerializer.Serialize(requestBody);
// 调用API
return await MakeApiCallAsync("RequestFileAsync", string.Empty, HttpMethod.Post, jsonBody, false);

这种方式无需手动处理转义,后续修改字段更方便,还能避免因拼写错误导致的JSON格式问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 05:45:04