Predefined Directives (by trait)

All predefined directives are organized into traits that form one part of the overarching DirectivesDirectives trait.

Directives filtering or extracting from the request

MethodDirectives
Filter and extract based on the request method.
HeaderDirectives
Filter and extract based on request headers.
AttributeDirectives
Filter and extract based on request attributes.
PathDirectives
Filter and extract from the request URI path.
HostDirectives
Filter and extract based on the target host.
ParameterDirectives, FormFieldDirectives
Filter and extract based on query parameters or form fields (of Content-Type application/x-www-form-urlencoded or multipart/form-data).
CodingDirectives
Filter and decode compressed request content.
Marshalling Directives
Extract the request entity.
SchemeDirectives
Filter and extract based on the request scheme.
SecurityDirectives
Handle authentication data from the request.
CookieDirectives
Filter and extract cookies.
BasicDirectives and MiscDirectives
Directives handling request properties.
FileUploadDirectives
Handle file uploads.
TlsDirectives
Extract and require aspects of TLS/mTLS connections
JwtDirectives
Require JWT token and extracts its claims

Directives creating or transforming the response

CacheConditionDirectives
Support for conditional requests (304 Not Modified responses).
CachingDirectives
Support for caching expensive operations.
CookieDirectives
Set, modify, or delete cookies.
CodingDirectives
Compress responses.
FileAndResourceDirectives
Deliver responses from files and resources.
RangeDirectives
Support for range requests (206 Partial Content responses).
RespondWithDirectives
Change response properties.
RouteDirectives
Complete or reject a request with a response.
BasicDirectives and MiscDirectives
Directives handling or transforming response properties.
TimeoutDirectives
Configure request timeouts and automatic timeout responses.

List of predefined directives by trait

Found an error in this documentation? The source code for this page can be found here. Please feel free to edit and contribute a pull request.