mirror of
https://github.com/benclaussen/NetboxPS.git
synced 2025-12-16 03:05:47 +00:00
Updated BuildNewURI to be compatible with new version of netbox
The way the parameters are done for the API has changed. `Get-NetboxIPAMAddress -Status 'dhcp' -Query 'dns_name__ic=example.org'` Used to return `/api/ipam/ip-addresses/?q=dns_name__ic=example.org&status=dhcp` Now it returns `/api/ipam/ip-addresses/?dns_name__ic=bel082224&status=dhcp`
This commit is contained in:
parent
7275591ac8
commit
00cdedbbab
1 changed files with 56 additions and 47 deletions
|
|
@ -333,16 +333,25 @@ function BuildNewURI {
|
||||||
|
|
||||||
Write-Verbose " URIPath: $($uriBuilder.Path)"
|
Write-Verbose " URIPath: $($uriBuilder.Path)"
|
||||||
|
|
||||||
if ($parameters) {
|
if ($Parameters) {
|
||||||
# Loop through the parameters and use the HttpUtility to create a Query string
|
# Loop through the parameters and use the HttpUtility to create a Query string
|
||||||
[System.Collections.Specialized.NameValueCollection]$URIParams = [System.Web.HttpUtility]::ParseQueryString([String]::Empty)
|
[System.Collections.Specialized.NameValueCollection]$URIParams = [System.Web.HttpUtility]::ParseQueryString($uriBuilder.Query)
|
||||||
|
|
||||||
foreach ($param in $Parameters.GetEnumerator()) {
|
foreach ($param in $Parameters.GetEnumerator()) {
|
||||||
Write-Verbose " Adding URI parameter $($param.Key):$($param.Value)"
|
Write-Verbose " Adding URI parameter $($param.Key):$($param.Value)"
|
||||||
|
if ($param.Key -eq 'q') {
|
||||||
|
# Append the query string directly
|
||||||
|
$uriBuilder.Query = $uriBuilder.Query.TrimStart('?') + '&' + $param.Value
|
||||||
|
}
|
||||||
|
else {
|
||||||
$URIParams[$param.Key] = $param.Value
|
$URIParams[$param.Key] = $param.Value
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
$uriBuilder.Query = $URIParams.ToString()
|
# Combine the existing query with new parameters
|
||||||
|
$existingQuery = $uriBuilder.Query.TrimStart('?')
|
||||||
|
$newQuery = $URIParams.ToString()
|
||||||
|
$uriBuilder.Query = ($existingQuery + '&' + $newQuery).Trim('&')
|
||||||
}
|
}
|
||||||
|
|
||||||
Write-Verbose " Completed building URIBuilder"
|
Write-Verbose " Completed building URIBuilder"
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue