【问题标题】:How to use JSON to Powershell Invoke-RestMethod?如何使用 JSON 到 Powershell Invoke-RestMethod?
【发布时间】:2019-01-09 23:15:10
【问题描述】:

我正在尝试使用此请求调用 API。这个请求在 Postman 中运行良好。但是如何将其转换为 PowerShell Invoke-RestMethod

这是我尝试过的。

$token = "abcdef123456"
$url = "https://example.com/OVAV1/triggercalls/1"
$header = @{"Authorization"='abdcdef123456'}

$body =
{
"requestid": "<Echo back field>",
"templatename": "Line_Down",
"templateid": "abcde12345",
"noofrecords": 1,
"variableinfo": [
{
"<<MOBILE_NUMBER>>": "123456789",
"<<UNIQUE_CALL_IDENTIFIER>>": "A001",
"<<LinkType>>": "PRI",
"<<HostName>>": "HOSTNAME"
}
]
}

$request = Invoke-RestMethod -Uri $url -Headers $header -Body $body -ContentType "application/json" -Method Post

$request

我在 Postman 中尝试了 JSON 代码。它工作正常。如何在 PowerShell 中使用相同的 JSON 代码?

【问题讨论】:

    标签: api powershell postman


    【解决方案1】:

    您不能像这样将 JSON 数据放入 PowerShell 代码中。把它放在一个here-string中,它应该可以工作:

    $body = @"
    {
        "requestid": "<Echo back field>",
        "templatename": "Line_Down",
        "templateid": "abcde12345",
        "noofrecords": 1,
        "variableinfo": [
            {
                "<<MOBILE_NUMBER>>": "123456789",
                "<<UNIQUE_CALL_IDENTIFIER>>": "A001",
                "<<LinkType>>": "PRI",
                "<<HostName>>": "HOSTNAME"
            }
        ]
    }
    "@
    

    您还可以将数据定义为哈希表并将其转换为 JSON 字符串:

    $data = @{
        "requestid"    = "<Echo back field>"
        "templatename" = "Line_Down"
        "templateid"   = "abcde12345"
        "noofrecords"  = 1
        "variableinfo" = @(
            @{
                "<<MOBILE_NUMBER>>"          = "123456789"
                "<<UNIQUE_CALL_IDENTIFIER>>" = "A001"
                "<<LinkType>>"               = "PRI"
                "<<HostName>>"               = "HOSTNAME"
            }
        )
    }
    
    $body = $data | ConvertTo-Json
    

    【讨论】:

      猜你喜欢
      • 2015-06-20
      • 2015-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多