为什么从Invoke-WebRequest返回的响应内容太短?

时间:2018-08-25 14:20:16

标签: rest api powershell

我正在尝试发出REST请求,以使用PowerShell从服务器获取一些数据。我正在使用的Commandlet是Invoke-WebRequest

> Invoke-WebRequest -Uri "http://server" -Method GET -ContentType "application/json" -Credential $cred

此请求将成功运行,并显示以下结果:

StatusCode       : 200
StatusDescription: OK
Content          : 25/08/2018 11:49:51   INFO   Start-Time ...
RawContent       : HTTP/1.1 200 OK
......

实际上,我正在获取日志文件,并且文件内容应作为内容返回到HTTP正文中。但是,内容仅返回2-3行,其余部分被省略。如何在响应正文的“内容”部分中获取日志文件的全部内容?

1 个答案:

答案 0 :(得分:1)

我使用类似的方法从Web服务获取JSON内容。您可能可以使用类似的东西

$resp = Invoke-WebRequest ....
Write-Information -Message $resp.StatusCode
Write-Information -Message $resp.Content
$json = $resp.Content | ConvertFrom-Json

如果您只想要内容并且可以忽略所有错误,则可以使用:

(Invoke-WebRequest ...).Content

如其他地方所述,如果您正在调用REST API,则Invoke-RestMethod会自动执行某些操作。