当 Head 方法与 Invoke-RestMethod 一起使用时无法获得响应

Unable to get response when Head method is used with Invoke-RestMethod

我正在 运行使用 Head 方法在 PowerShell 中执行以下操作,但我没有收到任何响应。预期输出采用编码格式。

Invoke-RestMethod -Uri 'http://localhost:2375/containers/45e97476b2f5/archive?path=/home/test/' -Method Head

当我 运行 使用 CURL 或 SOAP UI 相同的 REST API 请求时,我得到如下预期输出。

HTTP/1.1 200 OK
Content-Type: application/x-tar
Server: Docker/1.12.3 (linux)
X-Docker-Container-Path-Stat: eyJuYW1lIjoidGVzdCIsInNpemUiOjYsIm1vZGUiOjIxNDc0ODQxNDEsIm10aW1lIjoiMjAxNy0wMy0wN1QyMzoyMToyNC40MD

有什么帮助吗?

我可以使用 Invoke-WebRequest 获得响应。

Invoke-RestMethod 用于与 Restful 网络服务交互,因此即使您指定 [=12],它也不会 return 您请求的 headers =] 方法。

您应该改用 Invoke-WebRequest,它确实会带回 headers 和其他属性(headers 然后在 .headers 属性 中) .

例如:

$Web = Invoke-WebRequest -URI 'http://localhost:2375/containers/45e97476b2f5/archive?path=/home/test/' -Method Head
$Web.Headers