2016-03-01 5 views

答えて

14

次の操作を行うことができる必要があります:

$params = @{"@type"="login"; 
"username"="[email protected]"; 
"password"="yyy"; 
} 

Invoke-WebRequest -Uri http://foobar.com/endpoint -Method POST -Body $params 

あなたが指定されている。これは、身体を掲載します。

+1

ありがとうございました。これは助けになった! – live2learn

23

Invoke-RestMethodを使用してREST-APIを使用します。文字列にJSONを保存し、使用しているボディ、元のように:

$JSON = @' 
{"@type":"login", 
"username":"[email protected]", 
"password":"yyy" 
} 
'@ 

$response = Invoke-RestMethod -Uri "http://somesite.com/oneendpoint" -Method Post -Body $JSON -ContentType "application/json" 

あなたはPowerShellの3を使用している場合、私はInvoke-RestMethodでいくつかの問題があったけど、あなたは代替としてInvoke-WebRequestを使用することができるはずです。

$response = Invoke-WebRequest -Uri "http://somesite.com/oneendpoint" -Method Post -Body $JSON -ContentType "application/json" 

あなたがあなた自身のJSON毎回書きたくない場合は、ハッシュテーブルを使用して、それを投稿する前にJSONに変換するためにPowerShellを使用することができます。 Ex。

$JSON = @{ 
    "@type" = "login" 
    "username" = "[email protected]" 
    "password" = "yyy" 
} | ConvertTo-Json 
+0

ありがとう!これは助けになった! – live2learn

関連する問題