PowerShell 400错误请求响应正文

时间:2019-11-12 01:02:24

标签: powershell

获取状态400后,我正在尝试打印响应正文。

try {
    if ($Responses = (Invoke-WebRequest @Param -ErrorAction Stop)) {
        $StatusCodes = $([int]$Responses.BaseResponse.StatusCode)
    }
    Write-Host ("State code : " + $StatusCodes)
} catch [System.Net.WebException] {
    $StatusCodes = $_.Exception.Response.StatusCode.Value__;
    $Messages = (($_.ErrorDetails.Message) | ConvertFrom-Json).Message;
    Write-Host ("State code : " + $StatusCodes);
    Write-Host ("Message: " + $Messages)
}

我的代码仅适用于状态代码。我要打印错误响应正文

{
    "status": "Failed",
    "warnings": {
        "errorCode": ",
        "errorDesc": " "
    }
}

1 个答案:

答案 0 :(得分:1)

错误响应似乎没有您期望的那种形式。如果您想要类似的东西,则需要自己构建。

try {
    ...
} catch [Net.WebException] {
    [PSCustomObject]@{
       'status'   = 'Failed'
       'warnings' = @{
           'errorCode' = $_.Exception.Response.StatusCode.value__
           'errorDesc' = $_.Exception.Message
       }
    } | ConvertTo-Json
}
相关问题