У меня есть крупный запрос API, который я пытаюсь сделать с помощью Powershell для дальнейшей отправки в виде JSON в PowerBI. Формат XML следующий (но гораздо больший):
<queryResponse last="99" first="0" count="2" type="APD" responseType="list" requestUrl="an URL" rootUrl="root URL">
<entity dtoType="aPDDTO" type="APD" url="URL_ID">
<accessPointDetailsDTO displayName="ID" id="ID">
<adminStatus>ENABLE</adminStatus>
<apType>AP2600I</apType>
<clientCount_5GHz>2</clientCount_5GHz>
<status>CLEARED</status>
<type>UnifiedAp</type>
<cdpNeighbors>
<cdpNeighbor>
<capabilities>Switch IGMP </capabilities>
<duplex>Full Duplex</duplex>
<interfaceSpeed>100Mbps</interfaceSpeed>
Я хотел бы иметь возможность отправлять не все, кроме указанных полей, в дальнейшем. У меня был цикл, который использовался ранее, когда API использовал JSON, который я пытался использовать:
while ($true) {
$AccessPointDetails = Invoke-WebRequest -Uri $Uri -Headers @{"Authorization"="Basic $BasicCreds"}
foreach ($AccessPoint in $AccessPointDetails) {
$payload = @{
"adminStatus" = $AccessPoint.adminStatus
}
Invoke-RestMethod -Method Post -Uri "$endpoint" -Body (ConvertTo-Json @($payload))
sleep 100
}
}
Я не получаю никаких значений, поэтому я предполагаю, что он не знает, где находятся данные.
РЕДАКТИРОВАТЬ 1
Я нашел несколько подсказок о том, как сделать ниже, чтобы представить данные в конце моего кода:
[ xml ]$fileContents = Get-Content -Path $Result
Проблема в том, что мне не нравится моя первая строка в данных, которые я пытаюсь прочитать, так как она выдала мне эту ошибку:
Get-Content : Cannot find drive. A drive with the name '<?xml version="1.0" ?>