Predefined Directives (alphabetically)
| Directive | Description | |
|---|---|---|
| alwaysCache | Wraps its inner Route with caching support using the given CacheCache implementation and the in-scope keyer function. |
|
| attribute | Extracts the value of the request attribute with a given key | |
| authenticateBasic | Wraps the inner route with Http Basic authentication support using a given Authenticator[T]Authenticator<T> |
|
| authenticateBasicAsync | Wraps the inner route with Http Basic authentication support using a given AsyncAuthenticator[T]AsyncAuthenticator<T> |
|
| authenticateBasicPF | Wraps the inner route with Http Basic authentication support using a given AuthenticatorPF[T]AuthenticatorPF<T> |
|
| authenticateBasicPFAsync | Wraps the inner route with Http Basic authentication support using a given AsyncAuthenticatorPF[T]AsyncAuthenticatorPF<T> |
|
| authenticateOAuth2 | Wraps the inner route with OAuth Bearer Token authentication support using a given AuthenticatorPF[T]AuthenticatorPF<T> |
|
| authenticateOAuth2Async | Wraps the inner route with OAuth Bearer Token authentication support using a given AsyncAuthenticator[T]AsyncAuthenticator<T> |
|
| authenticateOAuth2PF | Wraps the inner route with OAuth Bearer Token authentication support using a given AuthenticatorPF[T]AuthenticatorPF<T> |
|
| authenticateOAuth2PFAsync | Wraps the inner route with OAuth Bearer Token authentication support using a given AsyncAuthenticatorPF[T]AsyncAuthenticatorPF<T> |
|
| authenticateOrRejectWithChallenge | Lifts an authenticator function into a directive | |
| authorize | Applies the given authorization check to the request | |
| authorizeAsync | Applies the given asynchronous authorization check to the request | |
| cache | Wraps its inner Route with caching support using the given CacheCache implementation and the in-scope keyer function. |
|
| cachingProhibited | Passes only requests that explicitly forbid caching with a Cache-Control header with either a no-cache or max-age=0 setting. |
|
| cancelRejection | Adds a TransformationRejectionTransformationRejection cancelling all rejections equal to the given one to the rejections potentially coming back from the inner route. |
|
| cancelRejections | Adds a TransformationRejectionTransformationRejection cancelling all matching rejections to the rejections potentially coming back from the inner route |
|
| checkSameOrigin | Checks that the request comes from the same origin | |
| complete | Completes the request using the given arguments | |
| completeOrRecoverWith | “Unwraps” a Future[T]CompletionStage<T> and runs the inner route when the future has failed with the error as an extraction of type Throwable |
|
| completeWith | Uses the marshaller for a given type to extract a completion function | |
| conditional | Wraps its inner route with support for conditional requests as defined by RFC 7232 | |
| cookie | Extracts the HttpCookieHttpCookie with the given name |
|
| decodeRequest | Decompresses the request if it is gzip or deflate compressed |
|
| decodeRequestWith | Decodes the incoming request using one of the given decoders | |
| delete | Rejects all non-DELETE requests | |
| deleteCookie | Adds a Set-Cookie response header expiring the given cookies |
|
| encodeResponse | Encodes the response with the encoding that is requested by the client via the Accept-Encoding header (NoCoding, Gzip and Deflate) |
|
| encodeResponseWith | Encodes the response with the encoding that is requested by the client via the Accept-Encoding header (from a user-defined set) |
|
| entity | Extracts the request entity unmarshalled to a given type | |
| extract | Extracts a single value using a RequestContext => TFunction<RequestContext, T> function |
|
| extractDataBytes | Extracts the entities data bytes as a stream Source<ByteString, ?>Source[ByteString, _] |
|
| extractClientIP | Extracts the client’s IP from either the X-Forwarded- or X-Real-IP header |
|
| extractCredentials | Extracts the potentially present HttpCredentialsHttpCredentials provided with the request’s AuthorizationAuthorization header |
|
| extractExecutionContext | Extracts the ExecutionContext from the RequestContextRequestContext |
|
| extractMatchedPath | Extracts the already matched path from the RequestContextRequestContext |
|
| extractMaterializer | Extracts the MaterializerMaterializer from the RequestContextRequestContext |
|
| extractHost | Extracts the hostname part of the Host request header value | |
| extractLog | Extracts the LoggingAdapterLoggingAdapter from the RequestContextRequestContext |
|
| extractMethod | Extracts the request method | |
| extractOfferedWsProtocols | Extract the list of websocket subprotocols offered by the client in the Sec-WebSocket-Protocol header if this is a websocket request and otherwise rejects with an ExpectedWebSocketRequestRejectionExpectedWebSocketRequestRejection |
|
| extractParserSettings | Extracts the ParserSettingsParserSettings from the RequestContextRequestContext |
|
| extractRequest | Extracts the current HttpRequestHttpRequest instance |
|
| extractRequestContext | Extracts the RequestContextRequestContext itself |
|
| extractRequestEntity | Extracts the RequestEntityRequestEntity from the RequestContextRequestContext |
|
| extractScheme | Extracts the URI scheme from the request | |
| extractSettings | Extracts the RoutingSettingsRoutingSettings from the RequestContextRequestContext |
|
| extractUnmatchedPath | Extracts the yet unmatched path from the RequestContextRequestContext |
|
| extractUri | Extracts the complete request URI | |
| failWith | Bubbles the given error up the response chain where it is dealt with by the closest handleExceptions directive and its ExceptionHandlerExceptionHandler |
|
| fileUpload | Provides a stream of an uploaded file from a multipart request | |
| fileUploadAll | Provides streams of all uploaded files from a multipart request | |
| formField | Extracts an HTTP form field (of Content-Type application/x-www-form-urlencoded or multipart/form-data) from the request |
|
| formFieldMap | Extracts a number of HTTP form field (of Content-Type application/x-www-form-urlencoded or multipart/form-data) from the request as a Map[String, String]Map<String, String> |
|
| formFieldMultiMap | Extracts a number of HTTP form field (of Content-Type application/x-www-form-urlencoded or multipart/form-data) from the request as a Map[String, List[String]]Map<String, List<String>> |
|
| formFields | Extracts a number of HTTP form field (of Content-Type application/x-www-form-urlencoded or multipart/form-data) from the request |
|
| formFieldSeq | Extracts a number of HTTP form field (of Content-Type application/x-www-form-urlencoded or multipart/form-data) from the request as a Seq[(String, String)]List<Map.Entry<String, String>> |
|
| get | Rejects all non-GET requests | |
| getFromBrowseableDirectories | Serves the content of the given directories as a file-system browser, i.e. files are sent and directories served as browseable listings | |
| getFromBrowseableDirectory | Serves the content of the given directory as a file-system browser, i.e. files are sent and directories served as browseable listings | |
| getFromDirectory | Completes GET requests with the content of a file underneath a given file-system directory | |
| getFromFile | Completes GET requests with the content of a given file | |
| getFromResource | Completes GET requests with the content of a given class-path resource | |
| getFromResourceDirectory | Completes GET requests with the content of a file underneath a given “class-path resource directory” | |
| handleExceptions | Transforms exceptions thrown during evaluation of the inner route using the given ExceptionHandlerExceptionHandler |
|
| handleRejections | Transforms rejections produced by the inner route using the given RejectionHandler |
|
| handleWebSocketMessages | Handles websocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejectionExpectedWebSocketRequestRejection |
|
| handleWebSocketMessagesForOptionalProtocol | Handles websocket requests with the given handler if the subprotocol matches and rejects other requests. If the subprotocol parameter is Noneempty any WebSocket request is accepted.. |
|
| handleWebSocketMessagesForProtocol | Handles websocket requests with the given handler if the subprotocol matches and rejects other requests with an ExpectedWebSocketRequestRejectionExpectedWebSocketRequestRejection or an UnsupportedWebSocketSubprotocolRejectionUnsupportedWebSocketSubprotocolRejection. |
|
| handleWith | Completes the request using a given function | |
| head | Rejects all non-HEAD requests | |
| headerValue | Extracts an HTTP header value using a given HttpHeader => Option[T]Function<HttpHeader, Optional<T>> function |
|
| headerValueByName | Extracts the value of the first HTTP request header with a given name | |
| headerValueByType | Extracts the first HTTP request header of the given type | |
| headerValuePF | Extracts an HTTP header value using a given PartialFunction[HttpHeader, T]]PartialFunction<HttpHeader, T> |
|
| host | Rejects all requests with a non-matching host name | |
| ignoreTrailingSlash | Retries the inner route adding (or removing) the trailing slash in case of empty rejections | |
| listDirectoryContents | Completes GET requests with a unified listing of the contents of all given file-system directories | |
| logRequest | Produces a log entry for every incoming request | |
| logRequestResult | Produces a log entry for every incoming request and RouteResultRouteResult |
|
| logResult | Produces a log entry for every RouteResultRouteResult |
|
| mapInnerRoute | Transforms its inner RouteRoute with a Route => RouteUnaryOperator<Route> function |
|
| mapRejections | Transforms rejections from a previous route with an immutable.Seq[Rejection] => immutable.Seq[Rejection]UnaryOperator<List<Rejection>> function |
|
| mapRequest | Transforms the request with an HttpRequest => HttpRequestUnaryOperator<HttpRequest> function |
|
| mapRequestContext | Transforms the RequestContextRequestContext with a RequestContext => RequestContextUnaryOperator<RequestContext> function |
|
| mapResponse | Transforms the response with an HttpResponse => HttpResponseUnaryOperator<HttpResponse> function |
|
| mapResponseEntity | Transforms the response entity with an ResponseEntity => ResponseEntityUnaryOperator<ResponseEntity> function |
|
| mapResponseHeaders | Transforms the response headers with an immutable.Seq[HttpHeader] => immutable.Seq[HttpHeader]UnaryOperator<List<HttpHeader>> function |
|
| mapRouteResult | Transforms the RouteResultRouteResult with a RouteResult => RouteResultUnaryOperator<RouteResult> function |
|
| mapRouteResultFuture | Transforms the RouteResultRouteResult future with a Future[RouteResult] => Future[RouteResult]UnaryOperator<CompletionStage<RouteResult>> function |
|
| mapRouteResultPF | Transforms the RouteResultRouteResult with a PartialFunction[RouteResult, RouteResult]PartialFunction<RouteResult, RouteResult> |
|
| mapRouteResultWith | Transforms the RouteResultRouteResult with a RouteResult => Future[RouteResult]Function<RouteResult, CompletionStage<RouteResult>> function |
|
| mapRouteResultWithPF | Transforms the RouteResultRouteResult with a PartialFunction[RouteResult, Future[RouteResult]]PartialFunction<RouteResult, CompletionStage<RouteResult>> |
|
| mapSettings | Transforms the RoutingSettingsRoutingSettings with a RoutingSettings => RoutingSettingsUnaryOperator<RoutingSettings> function |
|
| mapUnmatchedPath | Transforms the unmatchedPath of the RequestContextRequestContext using a Uri.Path => Uri.PathUnaryOperator<Uri.Path> function |
|
| method | Rejects all requests whose HTTP method does not match the given one | |
| onComplete | “Unwraps” a Future[T]CompletionStage<T> and runs the inner route after future completion with the future’s value as an extraction of type Try[T]Try<T> |
|
| onCompleteWithBreaker | “Unwraps” a Future[T]CompletionStage<T> inside a CircuitBreakerCircuitBreaker and runs the inner route after future completion with the future’s value as an extraction of type Try[T]Try<T> |
|
| onSuccess | “Unwraps” a Future[T]CompletionStage<T> and runs the inner route after future completion with the future’s value as an extraction of type T |
|
| optionalAttribute | Extracts the value of an optional request attribute with a given key | |
| optionalCookie | Extracts the HttpCookiePairHttpCookiePair with the given name as an Option[HttpCookiePair]Optional<HttpCookiePair> |
|
| optionalHeaderValue | Extracts an optional HTTP header value using a given HttpHeader => Option[T]Function<HttpHeader, Optional<T>> function |
|
| optionalHeaderValueByName | Extracts the value of the first optional HTTP request header with a given name | |
| optionalHeaderValueByType | Extracts the first optional HTTP request header of the given type | |
| optionalHeaderValuePF | Extracts an optional HTTP header value using a given PartialFunction[HttpHeader, T]PartialFunction<HttpHeader, T> |
|
| options | Rejects all non-OPTIONS requests | |
| overrideMethodWithParameter | Changes the request method to the value of the specified query parameter | |
| parameter | Extracts a query parameter value from the request | |
| parameterMap | Extracts the request’s query parameters as a Map[String, String]Map<String, String> |
|
| parameterMultiMap | Extracts the request’s query parameters as a Map[String, List[String]]Map<String, List<String>> |
|
| parameters | Extracts a number of query parameter values from the request | |
| parameterSeq | Extracts the request’s query parameters as a Seq[(String, String)]List<Map.Entry<String, String>> |
|
| pass | Always simply passes the request on to its inner route, i.e. doesn’t do anything, neither with the request nor the response | |
| patch | Rejects all non-PATCH requests | |
| path | Applies the given PathMatcher to the remaining unmatched path after consuming a leading slash |
|
| pathEnd | Only passes on the request to its inner route if the request path has been matched completely | |
| pathEndOrSingleSlash | Only passes on the request to its inner route if the request path has been matched completely or only consists of exactly one remaining slash | |
| pathPrefix | Applies the given PathMatcher to a prefix of the remaining unmatched path after consuming a leading slash |
|
| pathPrefixTest | Checks whether the unmatchedPath has a prefix matched by the given PathMatcher after implicitly consuming a leading slash |
|
| pathSingleSlash | Only passes on the request to its inner route if the request path consists of exactly one remaining slash | |
| pathSuffix | Applies the given PathMatcher to a suffix of the remaining unmatched path (Caution: check scaladocjava!) |
|
| pathSuffixTest | Checks whether the unmatched path has a suffix matched by the given PathMatcher (Caution: check scaladocjava!) |
|
| post | Rejects all non-POST requests | |
| provide | Injects a given value into a directive | |
| put | Rejects all non-PUT requests | |
| rawPathPrefix | Applies the given matcher directly to a prefix of the unmatched path of the RequestContextRequestContext, without implicitly consuming a leading slash |
|
| rawPathPrefixTest | Checks whether the unmatchedPath has a prefix matched by the given PathMatcher |
|
| recoverRejections | Transforms rejections from the inner route with an immutable.Seq[Rejection] => RouteResultFunction<List<Rejection>, RouteResult> function |
|
| recoverRejectionsWith | Transforms rejections from the inner route with an immutable.Seq[Rejection] => Future[RouteResult]Function<List<Rejection], CompletionStage<RouteResult>> function |
|
| redirect | Completes the request with redirection response of the given type to the given URI | |
| redirectToNoTrailingSlashIfPresent | If the request path ends with a slash, redirects to the same URI without trailing slash in the path | |
| redirectToTrailingSlashIfMissing | If the request path doesn’t end with a slash, redirects to the same URI with trailing slash in the path | |
| reject | Rejects the request with the given rejections | |
| rejectEmptyResponse | Converts responses with an empty entity into (empty) rejections | |
| requestEncodedWith | Rejects the request with an UnsupportedRequestEncodingRejectionUnsupportedRequestEncodingRejection if its encoding doesn’t match the given one |
|
| requestEntityEmpty | Rejects if the request entity is non-empty | |
| requestEntityPresent | Rejects with a RequestEntityExpectedRejectionRequestEntityExpectedRejection if the request entity is empty |
|
| respondWithDefaultHeader | Adds a given response header if the response doesn’t already contain a header with the same name | |
| respondWithDefaultHeaders | Adds the subset of the given headers to the response which doesn’t already have a header with the respective name present in the response | |
| respondWithHeader | Unconditionally adds a given header to the outgoing response | |
| respondWithHeaders | Unconditionally adds the given headers to the outgoing response | |
| responseEncodingAccepted | Rejects the request with an UnacceptedResponseEncodingRejectionUnacceptedResponseEncodingRejection if the given response encoding is not accepted by the client |
|
| scheme | Rejects all requests whose URI scheme doesn’t match the given one | |
| selectPreferredLanguage | Inspects the request’s Accept-Language header and determines, which of a given set of language alternatives is preferred by the client |
|
| setCookie | Adds a Set-Cookie response header with the given cookies |
|
| storeUploadedFile | Streams one uploaded file from a multipart request to a file on disk | |
| storeUploadedFiles | Streams all uploaded files from a multipart request to files on disk | |
| textract | Extracts a number of values using a RequestContext => Tuple function |
|
| tprovide | Injects a given tuple of values into a directive | |
| validate | Checks a given condition before running its inner route | |
| withoutRequestTimeout | Disables request timeouts for a given route. | |
| withoutSizeLimit | Skips request entity size check | |
| withExecutionContext | Runs its inner route with the given alternative ExecutionContext |
|
| withLog | Runs its inner route with the given alternative LoggingAdapterLoggingAdapter |
|
| withMaterializer | Runs its inner route with the given alternative MaterializerMaterializer |
|
| withPrecompressedMediaTypeSupport | Adds a Content-Encoding: gzip response header if the entity’s media-type is precompressed with gzip header |
|
| withRangeSupport | Adds Accept-Ranges: bytes to responses to GET requests, produces partial responses if the initial request contained a valid Range header |
|
| withRequestTimeout | Configures the request timeouts for a given route. | |
| withRequestTimeoutResponse | Prepares the HttpResponseHttpResponse that is emitted if a request timeout is triggered. RequestContext => RequestContext function |
|
| withSettings | Runs its inner route with the given alternative RoutingSettingsRoutingSettings |
|
| withSizeLimit | Applies request entity size check |
2.0.0-M0+77-2eba946d*