Команда cURL to Invoke-Webrequest
Может кто-нибудь дать мне подсказку, как преобразовать следующую команду curl в PS Invoke-Webrequest?
curl -d {\"password\":\"$password\"\} $vault/v1/auth/userpass/login/${login,,}
У меня есть некоторые мысли по этому поводу, но не могу понять, как это закончить:
$vault="3.3.3.3:8500"
$pair = (Get-Credential)
$params = ????
$login = $pair.getNetworkCredential().username
$pass = $pair.getNetworkCredential().password
Invoke-WebRequest $url -Method Post -Credential $pair -Body $params -UseBasicParsing
Как правильно передать $params как в запросе curl?
1 ответ
Params должен быть хеш-таблицей @{}
,
$Params = @{
Username="TestName";
Password="TestPassword";
Places = @("Here","There");
}
Вот пример использования тестового API с именем jsonplaceholder
$url = 'https://jsonplaceholder.typicode.com/posts'
$params = {
title: 'foo'
body: 'bar'
userId:1
}
(Invoke-WebRequest $url -Method Post -Body $params -UseBasicParsing).content | ConvertFrom-JSON
отклик
id
title: 'foo'
body: 'bar'
userId:1
--------------------------------------------------- --
101