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

如何在PowerShell中格式化含数组结构的JSON请求体?

PowerShell中正确声明哈希表以生成有效JSON请求体

你原来的写法里,Sorting和Group的语法不符合PowerShell规则,正确写法需要注意两点:

  • PowerShell中声明数组要用@(),而非JavaScript风格的[]
  • 数组内的对象要写成PowerShell哈希表@{},不能直接用{}

正确的哈希表声明

$body = @{
    Id = "123"
    SessionId = ""
    Sorting = @(
        @{
            field = "EventDateTime"
            dir = "desc"
        }
    )
    Group = @()
}

转换为有效JSON

使用ConvertTo-Json转换时,必须指定足够的-Depth参数(默认深度为2,嵌套结构需要更高深度),否则嵌套哈希表会被错误序列化:

$jsonBody = $body | ConvertTo-Json -Depth 3

执行后得到的有效JSON如下:

{
    "Id": "123",
    "SessionId": "",
    "Sorting": [
        {
            "field": "EventDateTime",
            "dir": "desc"
        }
    ],
    "Group": []
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 08:38:09