Как правильно отформатировать PSObject для передачи методу PUT для метода InvokeRest
Ниже приведены пары ключ-значение, которые мне нужно передать в API. Не знаю, где я ошибаюсь
$Body = @{
hostName = 'null'
hostOperatingSystem = 0
optionalFilter1 = 'null'
optionalFilter2 = 'null'
description = 'null'
serviceName = "ServiceManager.Logging"
sectionName = "Services"
signature = 'null'
value = @( @{
Services = @( @{
FullPath = "..\Service\MicroService.exe"
InstanceCount = 2
})
})
} | ConvertTo-Json -Depth 4
$Response = Invoke-RestMethod -Uri $URI -Method PUT -Headers $Headers -Body $Body -ContentType 'application/json'
Ниже я получаю ошибку
Invoke-RestMethod : {"":["JsonToken EndArray is not valid for closing JsonType Object. Path '', line 14, position 15."],"value":["Unexpected character encountered while parsing value: [. Path 'value', line 5, position 15."]}
1 ответ
$Body = @{
hostName = '';
hostOperatingSystem = 0;
optionalFilter1 = '';
optionalFilter2 = '';
description = '';
serviceName = "ServiceManager.Logging";
sectionName = "Services";
signature = 'null';
value = '{"Services": [{"Fullpath":"..\\MicroService.exe","InstanceCount": 2}]}'
} | ConvertTo-Json -Depth 10
Это был правильный формат