我想在PowerShell中发出POST请求。以下是邮递员的身体细节。
{
"@type":"login",
"username":"[email protected]",
"password":"yyy"
}
如何在PowerShell中传递此内容?
@Frode F.给出了正确的答案。
顺便说一句,Invoke-WebRequest
还会给你打印200 OK
和很多bla,bla,bla ......这可能很有用,但我仍然更喜欢更轻的Invoke-RestMethod
。
此外,请记住,您只需要使用| ConvertTo-Json
作为正文,而不是标题:
$body = @{
"UserSessionId"="12345678"
"OptionalEmail"="[email protected]"
} | ConvertTo-Json
$header = @{
"Accept"="application/json"
"connectapitoken"="97fe6ab5b1a640909551e36a071ce9ed"
"Content-Type"="application/json"
}
Invoke-RestMethod -Uri "http://MyServer/WSVistaWebClient/RESTService.svc/member/search" -Method 'Post' -Body $body -Headers $header | ConvertTo-HTML
然后,您可以在请求结束时附加| ConvertTo-HTML
以提高可读性