У меня есть номер, давайте используем 11
в качестве значения для примера. У меня есть точки доступа с именами (в данном случае) 0266AP1, 0266AP2, 0266AP3, 0266AP4
и так далее. 0266
это номер сайта / магазина.
Звоня в Cisco Prime API, я вижу, что на сайте 0266 есть 11 точек доступа. То, что я хочу сделать, чтобы действительно быстро передать список на мой контроллер, это приращение, пока я не достигну 11
или значения @count
.
Function Get-AllApNames {
Write-Verbose "Getting all APs for Store $Store"
$req = "https://cpist/webacs/api/v3/data/AccessPointDetails.json?.group=$Store"
Write-Verbose "Making request to $storeApReq"
$idReq = Invoke-RestMethod -uri $storeApReq -method Get -ContentType 'application/json' -headers @{ Authorization = $auth }
Write-Log "Making Get request to $storeApReq" -Level INFO -logfile $logFile
$apIdCount = $apIdListReq.queryResponse."@count"
$apArray = New-Object System.Collections.ArrayList
}
Я удалил свои попытки, так как все они оказались пустыми, но я по сути хочу использовать $apIdCount
в качестве точки остановки и 1
в качестве отправной точки.
Решение 1:
Function Get-AllApNames {
Write-Verbose "Getting all APs for Store $Store"
$req = "https://cpist/webacs/api/v3/data/AccessPointDetails.json?.group=$Store"
Write-Verbose "Making request to $storeApReq"
$idReq = Invoke-RestMethod -uri $storeApReq -method Get -ContentType 'application/json' -headers @{ Authorization = $auth }
Write-Log "Making Get request to $storeApReq" -Level INFO -logfile $logFile
$apIdCount = $apIdListReq.queryResponse."@count"
$apArray = New-Object System.Collections.ArrayList
$apLoop = 1..$apIdCount
foreach($i in $apLoop) {
$accPt = $Store + 'AP' + $i
Write-Host $accPt
}
}