Headers
In Pode you can add/retrieve headers for the Request/Response of the current web event. Using the header functions has to be done within the context of a web event, such as in Routes/Middleware/Authentication/Logging/Endware.
Setting Headers
There are 2 ways of setting headers on a response: Add-PodeHeader
and Set-PodeHeader
.
Add-PodeHeader
will append multiple values for one header on the response - such as the Set-Cookie
header of which there can be multiple of on a response. The following will add 2 of the same header on the response:
Add-PodeMiddleware -Name Example -ScriptBlock {
Add-PodeHeader -Name Name1 -Value Value1
Add-PodeHeader -Name Name1 -Value Value2
}
Set-PodeHeader
will clear all current values for a header on the response, and reset it to one value. The following will add 2 of the same header to the response, but then override that to 1 header:
Add-PodeMiddleware -Name Example -ScriptBlock {
Add-PodeHeader -Name Name1 -Value Value1
Add-PodeHeader -Name Name1 -Value Value2
Set-PodeHeader -Name Name1 -Value Value3
}
Getting Headers
To retrieve the value of a header on the request, you can use Get-PodeHeader
:
Add-PodeRoute -Method Get -Path '/' -ScriptBlock {
Get-PodeHeader -Name 'X-Header-Name'
}
Signing Headers
You can sign a header by supplying a -Secret
to any of the header functions; supplying it to Get-PodeHeader
will attempt to unsign the header for the raw value.