Add-PodeMiddleware
SYNOPSIS
Adds a new Middleware to be invoked before every Route, or certain Routes.
SYNTAX
Script (Default)
Add-PodeMiddleware -Name <String> -ScriptBlock <ScriptBlock> [-Route <String>] [-ArgumentList <Object[]>]
[-ProgressAction <ActionPreference>] [<CommonParameters>]
Input
Add-PodeMiddleware -Name <String> [-InputObject] <Hashtable> [-Route <String>] [-ArgumentList <Object[]>]
[-ProgressAction <ActionPreference>] [<CommonParameters>]
DESCRIPTION
Adds a new Middleware to be invoked before every Route, or certain Routes. ScriptBlock should return $true to continue execution, or $false to stop.
EXAMPLES
EXAMPLE 1
Add-PodeMiddleware -Name 'BlockAgents' -ScriptBlock { /* logic */ }
EXAMPLE 2
Add-PodeMiddleware -Name 'CheckEmailOnApi' -Route '/api/*' -ScriptBlock { /* logic */ }
PARAMETERS
-ArgumentList
An array of arguments to supply to the Middleware's ScriptBlock.
Type: Object[]
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-InputObject
A Middleware HashTable from New-PodeMiddleware, or from certain other functions that return Middleware as a HashTable.
Type: Hashtable
Parameter Sets: Input
Aliases:
Required: True
Position: 1
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-Name
The Name of the Middleware.
Type: String
Parameter Sets: (All)
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ProgressAction
{{ Fill ProgressAction Description }}
Type: ActionPreference
Parameter Sets: (All)
Aliases: proga
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Route
A Route path for which Routes this Middleware should only be invoked against.
Type: String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ScriptBlock
The Script defining the logic of the Middleware. Should return $true to continue execution, or $false to stop.
Type: ScriptBlock
Parameter Sets: Script
Aliases:
Required: True
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.