Skip to content

Commit 92d947c

Browse files
committed
filter out non HttpResponseContext output to prevent errors
1 parent 3adf41e commit 92d947c

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

Modules/CIPPCore/Public/Entrypoints/HTTP Functions/New-CippCoreRequest.ps1

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,17 @@ function New-CippCoreRequest {
3838
Write-LogMessage -headers $Headers -API $Request.Params.CIPPEndpoint -message 'Accessed this API' -Sev 'Debug'
3939
if ($Access) {
4040
$Response = & $FunctionName @HttpTrigger
41-
if ($Response.StatusCode) {
42-
return ([HttpResponseContext]$Response)
41+
# Filter to only return HttpResponseContext objects
42+
$HttpResponse = $Response | Where-Object { $_.PSObject.TypeNames -contains 'HttpResponseContext' -or ($_.StatusCode -and $_.Body) }
43+
if ($HttpResponse) {
44+
# Return the first valid HttpResponseContext found
45+
return ([HttpResponseContext]($HttpResponse | Select-Object -First 1))
46+
} else {
47+
# If no valid response context found, create a default success response
48+
return ([HttpResponseContext]@{
49+
StatusCode = [HttpStatusCode]::OK
50+
Body = $Response
51+
})
4352
}
4453
}
4554
} catch {
@@ -61,4 +70,4 @@ function New-CippCoreRequest {
6170
Body = 'Request not processed'
6271
})
6372
}
64-
}
73+
}

0 commit comments

Comments
 (0)