Я пытаюсь выполнить REST API в PowerShell с помощью invoke-restmethod / invoke-webrequest, но не могу передать входные данные Json. Работает с командой CURL.
curl -v --user admin: password -H Accept: application / json -H Content-Type: application / json -d "@C: \ data \ test.json" -X POST http://10.11.60.88:8081/artifactory/api/distribute
Содержимое Test.json показано ниже
{
"targetRepo" : "ECSDigital_Bintray",
"packagesRepoPaths" : ["SNOW/org/apache/maven/maven-artifact/3.3.9/maven-artifact-3.3.9.jar"]
}
Я пишу ниже PowerShell, и это дает мне серию ошибок.
$ user = "admin"
$ pass = "пароль"
$ secpasswd = ConvertTo-SecureString $ user -AsPlainText -Force $ cred = New-Object System.Management.Automation.PSCredential ($ pass, $ secpasswd)
$ postParams = @ {targetRepo = 'SNOW'; packagesRepoPaths = '["org / apache / maven / maven-artifact / 3.3.9 / maven-artifact-3.3.9.jar"]'}
Invoke-WebRequest -Uri "http://10.11.60.88:8081/artifactory/api/distribute "-Credential $ cred -Method Post -ContentType" application / json "-Body $ postParams
Ошибка: Invoke-WebRequest: удаленный сервер возвратил ошибку: (400) неверный запрос.
Я пробовал несколько комбинаций входов json, но не пошел. Любая помощь?