🙄
PowerShellでInvoke-WebRequestのエラー時レスポンスを確認したいだけだった
try{
$a = Invoke-WebRequest "https://example.com/" -Method Get
$a.RawContent
}catch{
$r = $_.Exception.Response
$rs = $r.GetResponseStream()
$rs.Position = 0
$sr = [System.IO.StreamReader]::new($rs)
$res = $sr.ReadToEnd()
$sr.Close()
"StatusCode : {0}, Response : {1}" -f $r.StatusCode.Value__ ,$res
}
$_.Exception.Response.GetResponseStream()
でStreamを開いて読み込む。
なおPositionを0にしないといけないらしい。
参考:
Discussion