$response = Invoke-WebRequest -Uri www.google.at
$response | Get-Member
TypeName: Microsoft.PowerShell.Commands.HtmlWebResponseObject
Name MemberType Definition
---- ---------- ----------
...
Headers Property System.Collections.Generic.Dictionary[string,string] Headers {get;}
Images Property Microsoft.PowerShell.Commands.WebCmdletElementCollection Images {get;}
InputFields Property Microsoft.PowerShell.Commands.WebCmdletElementCollection InputFields {get;}
Links Property Microsoft.PowerShell.Commands.WebCmdletElementCollection Links {get;}
ParsedHtml Property mshtml.IHTMLDocument2 ParsedHtml {get;}
RawContent Property string RawContent {get;set;}
RawContentLength Property long RawContentLength {get;}
RawContentStream Property System.IO.MemoryStream RawContentStream {get;}
Scripts Property Microsoft.PowerShell.Commands.WebCmdletElementCollection Scripts {get;}
StatusCode Property int StatusCode {get;}
StatusDescription Property string StatusDescription {get;}
Через Get-Member
вы будете знать, какие свойства поддерживает этот объект. Затем вы можете вызвать эти свойства для данного объекта:
$response.StatusCode
200
Если вы хотите выбрать несколько свойств, вы можете использовать Select-Object
:
$response | select statuscode, statusdescription
StatusCode StatusDescription
---------- -----------------
200 OK
Вы можете, конечно, сохранить результаты Select-Object
в переменной.
Более того же можно использовать для Invoke-RestMethod
:
Invoke-RestMethod -Uri https://blogs.msdn.microsoft.com/powershell/feed/ | Get-Member
TypeName: System.Xml.XmlElement
Name MemberType Definition
---- ---------- ----------
...
comments Property System.Object[] comments {get;}
creator Property System.Xml.XmlElement creator {get;}
description Property System.Xml.XmlElement description {get;}
encoded Property System.Xml.XmlElement encoded {get;}
...
Свойства, которые вы можете выбрать / использовать, зависят от формата, возвращаемого в теле ответа. В приведенном выше примере у вас есть тело XML, но это также может быть JSON или что-то еще.