Packages

abstract class HttpApp extends Directives

DEPRECATED, consider https://developer.lightbend.com/guides/akka-http-quickstart-scala/ instead

Bootstrap trait for Http Server. It helps booting up an akka-http server by only defining the desired routes. It offers additional hooks to modify the default behavior.

Annotations
@deprecated
Deprecated

(Since version 10.2.0) HttpApp this doesn't reflect the latest Akka APIs

Source
HttpApp.scala
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. HttpApp
  2. Directives
  3. TlsDirectives
  4. CorsDirectives
  5. AttributeDirectives
  6. FramedEntityStreamingDirectives
  7. WebSocketDirectives
  8. SecurityDirectives
  9. SchemeDirectives
  10. RouteDirectives
  11. RespondWithDirectives
  12. RangeDirectives
  13. PathDirectives
  14. ImplicitPathMatcherConstruction
  15. PathMatchers
  16. TimeoutDirectives
  17. ParameterDirectives
  18. ParameterDirectivesInstances
  19. MiscDirectives
  20. MethodDirectives
  21. MarshallingDirectives
  22. HostDirectives
  23. HeaderDirectives
  24. FutureDirectives
  25. FormFieldDirectives
  26. ToNameReceptacleEnhancements
  27. FormFieldDirectivesInstances
  28. FileUploadDirectives
  29. FileAndResourceDirectives
  30. ExecutionDirectives
  31. CodingDirectives
  32. DebuggingDirectives
  33. CookieDirectives
  34. CacheConditionDirectives
  35. BasicDirectives
  36. RouteConcatenation
  37. AnyRef
  38. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Basic directives

  1. def cancelRejection(rejection: Rejection): Directive0

    Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.

    Adds a TransformationRejection cancelling all rejections equal to the given one to the list of rejections potentially coming back from the inner route.

    Definition Classes
    BasicDirectives
  2. def cancelRejections(cancelFilter: (Rejection) => Boolean): Directive0

    Adds a TransformationRejection cancelling all rejections for which the given filter function returns true to the list of rejections potentially coming back from the inner route.

    Adds a TransformationRejection cancelling all rejections for which the given filter function returns true to the list of rejections potentially coming back from the inner route.

    Definition Classes
    BasicDirectives
  3. def cancelRejections(classes: Class[_]*): Directive0

    Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.

    Adds a TransformationRejection cancelling all rejections of one of the given classes to the list of rejections potentially coming back from the inner route.

    Definition Classes
    BasicDirectives
  4. def extract[T](f: (RequestContext) => T): Directive1[T]

    Extracts a single value using the given function.

    Extracts a single value using the given function.

    Definition Classes
    BasicDirectives
  5. def extractActorSystem: Directive1[ActorSystem]

    Extracts the akka.actor.ActorSystem if the available Materializer is an akka.stream.ActorMaterializer.

    Extracts the akka.actor.ActorSystem if the available Materializer is an akka.stream.ActorMaterializer. Otherwise throws an exception as it won't be able to extract the system from arbitrary materializers.

    Definition Classes
    BasicDirectives
  6. def extractDataBytes: Directive1[Source[ByteString, Any]]

    Extracts the entities dataBytes akka.stream.scaladsl.Source from the akka.http.scaladsl.server.RequestContext.

    Definition Classes
    BasicDirectives
  7. def extractExecutionContext: Directive1[ExecutionContextExecutor]

    Extracts the scala.concurrent.ExecutionContextExecutor from the akka.http.scaladsl.server.RequestContext.

  8. def extractLog: Directive1[LoggingAdapter]

    Extracts the akka.event.LoggingAdapter from the akka.http.scaladsl.server.RequestContext.

  9. def extractMatchedPath: Directive1[Path]

    Extracts the already matched path from the RequestContext.

    Extracts the already matched path from the RequestContext.

    Definition Classes
    BasicDirectives
  10. def extractMaterializer: Directive1[Materializer]

    Extracts the akka.stream.Materializer from the akka.http.scaladsl.server.RequestContext.

  11. def extractParserSettings: Directive1[ParserSettings]

    Extracts the akka.http.scaladsl.settings.ParserSettings from the akka.http.scaladsl.server.RequestContext.

  12. def extractRequest: Directive1[HttpRequest]

    Extracts the current HttpRequest instance.

    Extracts the current HttpRequest instance.

    Definition Classes
    BasicDirectives
  13. def extractRequestContext: Directive1[RequestContext]

    Extracts the akka.http.scaladsl.server.RequestContext itself.

    Definition Classes
    BasicDirectives
  14. def extractRequestEntity: Directive1[RequestEntity]

    Extracts the akka.http.scaladsl.model.RequestEntity from the akka.http.scaladsl.server.RequestContext.

  15. def extractSettings: Directive1[RoutingSettings]

    Extracts the RoutingSettings from the akka.http.scaladsl.server.RequestContext.

    Extracts the RoutingSettings from the akka.http.scaladsl.server.RequestContext.

    Definition Classes
    BasicDirectives
  16. def extractStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive1[Strict]

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the akka.http.parsing.max-to-strict-bytes configuration setting.

    Converts the HttpEntity from the akka.http.scaladsl.server.RequestContext into an akka.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

    Definition Classes
    BasicDirectives
  17. def extractStrictEntity(timeout: FiniteDuration): Directive1[Strict]

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the akka.http.parsing.max-to-strict-bytes configuration setting.

    Converts the HttpEntity from the akka.http.scaladsl.server.RequestContext into an akka.http.scaladsl.model.HttpEntity.Strict and extracts it, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

    Definition Classes
    BasicDirectives
  18. def extractUnmatchedPath: Directive1[Path]

    Extracts the yet unmatched path from the RequestContext.

    Extracts the yet unmatched path from the RequestContext.

    Definition Classes
    BasicDirectives
  19. def extractUri: Directive1[Uri]

    Extracts the complete request URI.

    Extracts the complete request URI.

    Definition Classes
    BasicDirectives
  20. def mapInnerRoute(f: (Route) => Route): Directive0

    Definition Classes
    BasicDirectives
  21. def mapRejections(f: (Seq[Rejection]) => Seq[Rejection]): Directive0

    Definition Classes
    BasicDirectives
  22. def mapRequest(f: (HttpRequest) => HttpRequest): Directive0

    Definition Classes
    BasicDirectives
  23. def mapRequestContext(f: (RequestContext) => RequestContext): Directive0

    Definition Classes
    BasicDirectives
  24. def mapResponse(f: (HttpResponse) => HttpResponse): Directive0

    Definition Classes
    BasicDirectives
  25. def mapResponseEntity(f: (ResponseEntity) => ResponseEntity): Directive0

    Definition Classes
    BasicDirectives
  26. def mapResponseHeaders(f: (Seq[HttpHeader]) => Seq[HttpHeader]): Directive0

    Definition Classes
    BasicDirectives
  27. def mapRouteResult(f: (RouteResult) => RouteResult): Directive0

    Definition Classes
    BasicDirectives
  28. def mapRouteResultFuture(f: (Future[RouteResult]) => Future[RouteResult]): Directive0

    Definition Classes
    BasicDirectives
  29. def mapRouteResultPF(f: PartialFunction[RouteResult, RouteResult]): Directive0

    Definition Classes
    BasicDirectives
  30. def mapRouteResultWith(f: (RouteResult) => Future[RouteResult]): Directive0

    Definition Classes
    BasicDirectives
  31. def mapRouteResultWithPF(f: PartialFunction[RouteResult, Future[RouteResult]]): Directive0

    Definition Classes
    BasicDirectives
  32. def mapSettings(f: (RoutingSettings) => RoutingSettings): Directive0

    Runs the inner route with settings mapped by the given function.

    Runs the inner route with settings mapped by the given function.

    Definition Classes
    BasicDirectives
  33. def mapUnmatchedPath(f: (Path) => Path): Directive0

    Transforms the unmatchedPath of the RequestContext using the given function.

    Transforms the unmatchedPath of the RequestContext using the given function.

    Definition Classes
    BasicDirectives
  34. def pass: Directive0

    A Directive0 that always passes the request on to its inner route (i.e.

    A Directive0 that always passes the request on to its inner route (i.e. does nothing with the request or the response).

    Definition Classes
    BasicDirectives
  35. def provide[T](value: T): Directive1[T]

    Injects the given value into a directive.

    Injects the given value into a directive.

    Definition Classes
    BasicDirectives
  36. def recoverRejections(f: (Seq[Rejection]) => RouteResult): Directive0

    Definition Classes
    BasicDirectives
  37. def recoverRejectionsWith(f: (Seq[Rejection]) => Future[RouteResult]): Directive0

    Definition Classes
    BasicDirectives
  38. def textract[L](f: (RequestContext) => L)(implicit arg0: Tuple[L]): Directive[L]

    Extracts a number of values using the given function.

    Extracts a number of values using the given function.

    Definition Classes
    BasicDirectives
  39. def toStrictEntity(timeout: FiniteDuration, maxBytes: Long): Directive0

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the akka.http.parsing.max-to-strict-bytes configuration setting.

    Extracts the akka.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

    Definition Classes
    BasicDirectives
  40. def toStrictEntity(timeout: FiniteDuration): Directive0

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    WARNING: This will read the entire request entity into memory and effectively disable streaming.

    To help protect against excessive memory use, the request will be aborted if the request is larger than allowed by the akka.http.parsing.max-to-strict-bytes configuration setting.

    Extracts the akka.http.scaladsl.server.RequestContext itself with the strict HTTP entity, or fails the route if unable to drain the entire request body within the timeout.

    timeout

    The directive is failed if the stream isn't completed after the given timeout.

    Definition Classes
    BasicDirectives
  41. def tprovide[L](values: L)(implicit arg0: Tuple[L]): Directive[L]

    Injects the given values into a directive.

    Injects the given values into a directive.

    Definition Classes
    BasicDirectives
  42. def withExecutionContext(ec: ExecutionContextExecutor): Directive0

    Runs its inner route with the given alternative scala.concurrent.ExecutionContextExecutor.

    Runs its inner route with the given alternative scala.concurrent.ExecutionContextExecutor.

    Definition Classes
    BasicDirectives
  43. def withLog(log: LoggingAdapter): Directive0

    Runs its inner route with the given alternative akka.event.LoggingAdapter.

    Runs its inner route with the given alternative akka.event.LoggingAdapter.

    Definition Classes
    BasicDirectives
  44. def withMaterializer(materializer: Materializer): Directive0

    Runs its inner route with the given alternative akka.stream.Materializer.

    Runs its inner route with the given alternative akka.stream.Materializer.

    Definition Classes
    BasicDirectives
  45. def withSettings(settings: RoutingSettings): Directive0

    Runs its inner route with the given alternative RoutingSettings.

    Runs its inner route with the given alternative RoutingSettings.

    Definition Classes
    BasicDirectives

Cache condition directives

  1. def conditional(eTag: Option[EntityTag], lastModified: Option[DateTime]): Directive0

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

    Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the *outside* of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

    Definition Classes
    CacheConditionDirectives
  2. def conditional(eTag: EntityTag, lastModified: DateTime): Directive0

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

    Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the *outside* of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

    Definition Classes
    CacheConditionDirectives
  3. def conditional(lastModified: DateTime): Directive0

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

    Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the *outside* of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

    Definition Classes
    CacheConditionDirectives
  4. def conditional(eTag: EntityTag): Directive0

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    Wraps its inner route with support for Conditional Requests as defined by http://tools.ietf.org/html/rfc7232

    In particular the algorithm defined by http://tools.ietf.org/html/rfc7232#section-6 is implemented by this directive.

    Note: if you want to combine this directive with withRangeSupport(...) you need to put it on the *outside* of the withRangeSupport(...) directive, i.e. withRangeSupport(...) must be on a deeper level in your route structure in order to function correctly.

    Definition Classes
    CacheConditionDirectives

Cookie directives

  1. def cookie(name: String): Directive1[HttpCookiePair]

    Extracts the HttpCookiePair with the given name.

    Extracts the HttpCookiePair with the given name. If the cookie is not present the request is rejected with a respective MissingCookieRejection.

    Definition Classes
    CookieDirectives
  2. def deleteCookie(name: String, domain: String = "", path: String = ""): Directive0

    Adds a Set-Cookie response header expiring the cookie with the given properties.

    Adds a Set-Cookie response header expiring the cookie with the given properties.

    Definition Classes
    CookieDirectives
  3. def deleteCookie(first: HttpCookie, more: HttpCookie*): Directive0

    Adds a Set-Cookie response header expiring the given cookies.

    Adds a Set-Cookie response header expiring the given cookies.

    Definition Classes
    CookieDirectives
  4. def optionalCookie(name: String): Directive1[Option[HttpCookiePair]]

    Extracts the HttpCookiePair with the given name as an Option[HttpCookiePair].

    Extracts the HttpCookiePair with the given name as an Option[HttpCookiePair]. If the cookie is not present a value of None is extracted.

    Definition Classes
    CookieDirectives
  5. def setCookie(first: HttpCookie, more: HttpCookie*): Directive0

    Adds a Set-Cookie response header with the given cookies.

    Adds a Set-Cookie response header with the given cookies.

    Definition Classes
    CookieDirectives

Debugging directives

  1. def logRequest(magnet: LoggingMagnet[(HttpRequest) => Unit]): Directive0

    Produces a log entry for every incoming request.

    Produces a log entry for every incoming request.

    Definition Classes
    DebuggingDirectives
  2. def logRequestResult(magnet: LoggingMagnet[(HttpRequest) => (RouteResult) => Unit]): Directive0

    Produces a log entry for every incoming request and RouteResult.

    Produces a log entry for every incoming request and RouteResult.

    Definition Classes
    DebuggingDirectives
  3. def logResult(magnet: LoggingMagnet[(RouteResult) => Unit]): Directive0

    Produces a log entry for every RouteResult.

    Produces a log entry for every RouteResult.

    Definition Classes
    DebuggingDirectives

Coding directives

  1. def decodeRequest: Directive0

    Decompresses the incoming request if it is gzip or deflate compressed.

    Decompresses the incoming request if it is gzip or deflate compressed. Uncompressed requests are passed through untouched. If the request encoded with another encoding the request is rejected with an UnsupportedRequestEncodingRejection.

    Definition Classes
    CodingDirectives
  2. def decodeRequestWith(decoders: Decoder*): Directive0

    Decodes the incoming request if it is encoded with one of the given encoders.

    Decodes the incoming request if it is encoded with one of the given encoders. If the request encoding doesn't match one of the given encoders the request is rejected with an UnsupportedRequestEncodingRejection. If no decoders are given the default encoders (Gzip, Deflate, NoCoding) are used.

    Definition Classes
    CodingDirectives
  3. def decodeRequestWith(decoder: Decoder): Directive0

    Decodes the incoming request using the given Decoder.

    Decodes the incoming request using the given Decoder. If the request encoding doesn't match the request is rejected with an UnsupportedRequestEncodingRejection.

    Definition Classes
    CodingDirectives
  4. def encodeResponse: Directive0

    Encodes the response with the encoding that is requested by the client via the Accept- Encoding header.

    Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

    If the Accept-Encoding header is missing or empty or specifies an encoding other than identity, gzip or deflate then no encoding is used.

    Definition Classes
    CodingDirectives
  5. def encodeResponseWith(first: Encoder, more: Encoder*): Directive0

    Encodes the response with the encoding that is requested by the client via the Accept- Encoding header.

    Encodes the response with the encoding that is requested by the client via the Accept- Encoding header. The response encoding is determined by the rules specified in http://tools.ietf.org/html/rfc7231#section-5.3.4.

    If the Accept-Encoding header is missing then the response is encoded using the first encoder.

    If the Accept-Encoding header is empty and NoCoding is part of the encoders then no response encoding is used. Otherwise the request is rejected.

    Definition Classes
    CodingDirectives
  6. def requestEncodedWith(encoding: HttpEncoding): Directive0

    Rejects the request with an UnsupportedRequestEncodingRejection if its encoding doesn't match the given one.

    Rejects the request with an UnsupportedRequestEncodingRejection if its encoding doesn't match the given one.

    Definition Classes
    CodingDirectives
  7. def responseEncodingAccepted(encoding: HttpEncoding): Directive0

    Rejects the request with an UnacceptedResponseEncodingRejection if the given response encoding is not accepted by the client.

    Rejects the request with an UnacceptedResponseEncodingRejection if the given response encoding is not accepted by the client.

    Definition Classes
    CodingDirectives
  8. def withPrecompressedMediaTypeSupport: Directive0

    Inspects the response entity and adds a Content-Encoding: gzip response header if the entity's media-type is precompressed with gzip and no Content-Encoding header is present yet.

    Inspects the response entity and adds a Content-Encoding: gzip response header if the entity's media-type is precompressed with gzip and no Content-Encoding header is present yet.

    Definition Classes
    CodingDirectives

Execution directives

  1. def handleExceptions(handler: ExceptionHandler): Directive0

    Transforms exceptions thrown during evaluation of its inner route using the given akka.http.scaladsl.server.ExceptionHandler.

    Transforms exceptions thrown during evaluation of its inner route using the given akka.http.scaladsl.server.ExceptionHandler.

    Definition Classes
    ExecutionDirectives
  2. def handleRejections(handler: RejectionHandler): Directive0

    Transforms rejections produced by its inner route using the given akka.http.scaladsl.server.RejectionHandler.

    Transforms rejections produced by its inner route using the given akka.http.scaladsl.server.RejectionHandler.

    Definition Classes
    ExecutionDirectives

File and resource directives

  1. def getFromBrowseableDirectories(directories: String*)(implicit renderer: DirectoryRenderer, resolver: ContentTypeResolver): Route

    Serves the content of the given directories as a file system browser, i.e.

    Serves the content of the given directories as a file system browser, i.e. files are sent and directories served as browseable listings.

    Definition Classes
    FileAndResourceDirectives
  2. def getFromBrowseableDirectory(directory: String)(implicit renderer: DirectoryRenderer, resolver: ContentTypeResolver): Route

    Same as getFromBrowseableDirectories with only one directory.

    Same as getFromBrowseableDirectories with only one directory.

    Definition Classes
    FileAndResourceDirectives
  3. def getFromDirectory(directoryName: String)(implicit resolver: ContentTypeResolver): Route

    Completes GET requests with the content of a file underneath the given directory.

    Completes GET requests with the content of a file underneath the given directory. If the file cannot be read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  4. def getFromFile(file: File, contentType: ContentType): Route

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  5. def getFromFile(file: File)(implicit resolver: ContentTypeResolver): Route

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  6. def getFromFile(fileName: String)(implicit resolver: ContentTypeResolver): Route

    Completes GET requests with the content of the given file.

    Completes GET requests with the content of the given file. If the file cannot be found or read the request is rejected.

    Definition Classes
    FileAndResourceDirectives
  7. def getFromResource(resourceName: String, contentType: ContentType, classLoader: ClassLoader = _defaultClassLoader): Route

    Completes GET requests with the content of the given resource.

    Completes GET requests with the content of the given resource. If the resource is a directory or cannot be found or read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  8. def getFromResource(resourceName: String)(implicit resolver: ContentTypeResolver): Route

    Completes GET requests with the content of the given class-path resource.

    Completes GET requests with the content of the given class-path resource. If the resource cannot be found or read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  9. def getFromResourceDirectory(directoryName: String, classLoader: ClassLoader = _defaultClassLoader)(implicit resolver: ContentTypeResolver): Route

    Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory".

    Same as "getFromDirectory" except that the file is not fetched from the file system but rather from a "resource directory". If the requested resource is itself a directory or cannot be found or read the Route rejects the request.

    Definition Classes
    FileAndResourceDirectives
  10. def listDirectoryContents(directories: String*)(implicit renderer: DirectoryRenderer): Route

    Completes GET requests with a unified listing of the contents of all given directories.

    Completes GET requests with a unified listing of the contents of all given directories. The actual rendering of the directory contents is performed by the in-scope Marshaller[DirectoryListing].

    Definition Classes
    FileAndResourceDirectives

File upload directives

  1. def fileUpload(fieldName: String): Directive1[(FileInfo, Source[ByteString, Any])]

    Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere.

    Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

    Definition Classes
    FileUploadDirectives
  2. def fileUploadAll(fieldName: String): Directive1[Seq[(FileInfo, Source[ByteString, Any])]]

    Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere.

    Collects each body part that is a multipart file as a tuple containing metadata and a Source for streaming the file contents somewhere. If there is no such field the request will be rejected. Files are buffered into temporary files on disk so in-memory buffers don't overflow. The temporary files are cleaned up once materialized, or on exit if the stream is not consumed.

    Definition Classes
    FileUploadDirectives
  3. def storeUploadedFile(fieldName: String, destFn: (FileInfo) => File): Directive[(FileInfo, File)]

    Streams the bytes of the file submitted using multipart with the given file name into a designated file on disk.

    Streams the bytes of the file submitted using multipart with the given file name into a designated file on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected, if there are multiple file parts with the same name, the first one will be used and the subsequent ones ignored.

    Definition Classes
    FileUploadDirectives
  4. def storeUploadedFiles(fieldName: String, destFn: (FileInfo) => File): Directive1[Seq[(FileInfo, File)]]

    Streams the bytes of the file submitted using multipart with the given field name into designated files on disk.

    Streams the bytes of the file submitted using multipart with the given field name into designated files on disk. If there is an error writing to disk the request will be failed with the thrown exception, if there is no such field the request will be rejected. Stored files are cleaned up on exit but not on failure.

    Definition Classes
    FileUploadDirectives

Form field directives

  1. def formFieldMap: Directive1[Map[String, String]]

    Extracts HTTP form fields from the request as a Map[String, String].

    Extracts HTTP form fields from the request as a Map[String, String].

    Definition Classes
    FormFieldDirectives
  2. def formFieldMultiMap: Directive1[Map[String, List[String]]]

    Extracts HTTP form fields from the request as a Map[String, List[String]].

    Extracts HTTP form fields from the request as a Map[String, List[String]].

    Definition Classes
    FormFieldDirectives
  3. def formFieldSeq: Directive1[Seq[(String, String)]]

    Extracts HTTP form fields from the request as a Seq[(String, String)].

    Extracts HTTP form fields from the request as a Seq[(String, String)].

    Definition Classes
    FormFieldDirectives

Future directives

  1. def completeOrRecoverWith(magnet: CompleteOrRecoverWithMagnet): Directive1[Throwable]

    "Unwraps" a Future[T] and runs the inner route when the future has failed with the future's failure exception as an extraction of type Throwable.

    "Unwraps" a Future[T] and runs the inner route when the future has failed with the future's failure exception as an extraction of type Throwable. If the future succeeds the request is completed using the values marshaller (This directive therefore requires a marshaller for the futures type to be implicitly available.)

    Definition Classes
    FutureDirectives
  2. def onComplete[T](future: => Future[T]): Directive1[Try[T]]

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type Try[T].

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type Try[T].

    Definition Classes
    FutureDirectives
  3. def onCompleteWithBreaker[T](breaker: CircuitBreaker)(future: => Future[T]): Directive1[Try[T]]

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T if the supplied CircuitBreaker is closed.

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T if the supplied CircuitBreaker is closed.

    If the supplied CircuitBreaker is open the request is rejected with a CircuitBreakerOpenRejection.

    Definition Classes
    FutureDirectives
  4. def onSuccess(magnet: OnSuccessMagnet): Directive[Out]

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T.

    "Unwraps" a Future[T] and runs the inner route after future completion with the future's value as an extraction of type T. If the future fails its failure Throwable is bubbled up to the nearest ExceptionHandler. If type T is already a Tuple it is directly expanded into the respective number of extractions.

    Definition Classes
    FutureDirectives

Header directives

  1. def checkSameOrigin(allowed: Default): Directive0

    Checks that request comes from the same origin.

    Checks that request comes from the same origin. Extracts the Origin header value and verifies that allowed range contains the obtained value. In the case of absent of the Origin header rejects with MissingHeaderRejection. If the origin value is not in the allowed range rejects with an InvalidOriginRejection and StatusCodes.Forbidden status.

    Definition Classes
    HeaderDirectives
  2. def headerValue[T](f: (HttpHeader) => Option[T]): Directive1[T]

    Extracts an HTTP header value using the given function.

    Extracts an HTTP header value using the given function. If the function result is undefined for all headers the request is rejected with an empty rejection set. If the given function throws an exception the request is rejected with a akka.http.scaladsl.server.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  3. def headerValueByName(headerName: String): Directive1[String]

    Extracts the value of the HTTP request header with the given name.

    Extracts the value of the HTTP request header with the given name. If no header with a matching name is found the request is rejected with a akka.http.scaladsl.server.MissingHeaderRejection.

    Definition Classes
    HeaderDirectives
  4. def headerValueByType[T](magnet: HeaderMagnet[T]): Directive1[T]

    Extracts the first HTTP request header of the given type.

    Extracts the first HTTP request header of the given type. If no header with a matching type is found the request is rejected with a akka.http.scaladsl.server.MissingHeaderRejection.

    Custom headers will only be matched by this directive if they extend ModeledCustomHeader and provide a companion extending ModeledCustomHeaderCompanion.

    Definition Classes
    HeaderDirectives
  5. def headerValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[T]

    Extracts an HTTP header value using the given partial function.

    Extracts an HTTP header value using the given partial function. If the function is undefined for all headers the request is rejected with an empty rejection set.

    Definition Classes
    HeaderDirectives
  6. def optionalHeaderValue[T](f: (HttpHeader) => Option[T]): Directive1[Option[T]]

    Extracts an optional HTTP header value using the given function.

    Extracts an optional HTTP header value using the given function. If the given function throws an exception the request is rejected with a akka.http.scaladsl.server.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  7. def optionalHeaderValueByName(headerName: String): Directive1[Option[String]]

    Extracts the value of the optional HTTP request header with the given name.

    Extracts the value of the optional HTTP request header with the given name.

    Definition Classes
    HeaderDirectives
  8. def optionalHeaderValueByType[T <: HttpHeader](magnet: HeaderMagnet[T]): Directive1[Option[T]]

    Extract the header value of the optional HTTP request header with the given type.

    Extract the header value of the optional HTTP request header with the given type.

    Custom headers will only be matched by this directive if they extend ModeledCustomHeader and provide a companion extending ModeledCustomHeaderCompanion.

    Definition Classes
    HeaderDirectives
  9. def optionalHeaderValuePF[T](pf: PartialFunction[HttpHeader, T]): Directive1[Option[T]]

    Extracts an optional HTTP header value using the given partial function.

    Extracts an optional HTTP header value using the given partial function. If the given function throws an exception the request is rejected with a akka.http.scaladsl.server.MalformedHeaderRejection.

    Definition Classes
    HeaderDirectives
  10. def headerValueByName(headerName: Symbol): Directive1[String]

    Extracts the value of the first HTTP request header with the given name.

    Extracts the value of the first HTTP request header with the given name. If no header with a matching name is found the request is rejected with a akka.http.scaladsl.server.MissingHeaderRejection.

    Definition Classes
    HeaderDirectives
    Annotations
    @deprecated
    Deprecated

    (Since version 10.2.0) Use string argument version or headerValueByType, e.g. instead of headerValueByName('Referer) use headerValueByType(Referer)

  11. def optionalHeaderValueByName(headerName: Symbol): Directive1[Option[String]]

    Extracts the value of the optional HTTP request header with the given name.

    Extracts the value of the optional HTTP request header with the given name.

    Definition Classes
    HeaderDirectives
    Annotations
    @deprecated
    Deprecated

    (Since version 10.2.0) Use string argument version or headerValueByType, e.g. instead of optionalHeaderValueByName('Referer) use optionalHeaderValueByType(Referer)

Host directives

  1. def extractHost: Directive1[String]

    Extracts the hostname part of the Host request header value.

    Extracts the hostname part of the Host request header value.

    Definition Classes
    HostDirectives
  2. def host(regex: Regex): Directive1[String]

    Rejects all requests with a host name that doesn't have a prefix matching the given regular expression.

    Rejects all requests with a host name that doesn't have a prefix matching the given regular expression. For all matching requests the prefix string matching the regex is extracted and passed to the inner route. If the regex contains a capturing group only the string matched by this group is extracted. If the regex contains more than one capturing group an IllegalArgumentException is thrown.

    Definition Classes
    HostDirectives
  3. def host(predicate: (String) => Boolean): Directive0

    Rejects all requests for whose host name the given predicate function returns false.

    Rejects all requests for whose host name the given predicate function returns false.

    Definition Classes
    HostDirectives
  4. def host(hostNames: String*): Directive0

    Rejects all requests with a host name different from the given ones.

    Rejects all requests with a host name different from the given ones.

    Definition Classes
    HostDirectives

Attribute directives

  1. def attribute[T](key: AttributeKey[T]): Directive1[T]

    Extracts a request attribute value for the given key.

    Extracts a request attribute value for the given key.

    Definition Classes
    AttributeDirectives
  2. def optionalAttribute[T](key: AttributeKey[T]): Directive1[Option[T]]

    Extracts an optional request attribute for the given key.

    Extracts an optional request attribute for the given key.

    Definition Classes
    AttributeDirectives

Marshalling directives

  1. def as[T](implicit um: FromRequestUnmarshaller[T]): FromRequestUnmarshaller[T]

    Returns the in-scope FromRequestUnmarshaller for the given type.

    Returns the in-scope FromRequestUnmarshaller for the given type.

    Definition Classes
    MarshallingDirectives
  2. def completeWith[T](marshaller: ToResponseMarshaller[T])(inner: ((T) => Unit) => Unit): Route

    Uses the marshaller for the given type to produce a completion function that is passed to its inner function.

    Uses the marshaller for the given type to produce a completion function that is passed to its inner function. You can use it do decouple marshaller resolution from request completion.

    Definition Classes
    MarshallingDirectives
  3. def entity[T](um: FromRequestUnmarshaller[T]): Directive1[T]

    Unmarshalls the requests entity to the given type passes it to its inner Route.

    Unmarshalls the requests entity to the given type passes it to its inner Route. If there is a problem with unmarshalling the request is rejected with the Rejection produced by the unmarshaller.

    Definition Classes
    MarshallingDirectives
  4. def handleWith[A, B](f: (A) => B)(implicit um: FromRequestUnmarshaller[A], m: ToResponseMarshaller[B]): Route

    Completes the request using the given function.

    Completes the request using the given function. The input to the function is produced with the in-scope entity unmarshaller and the result value of the function is marshalled with the in-scope marshaller.

    Definition Classes
    MarshallingDirectives
  5. def instanceOf[T](implicit m: ToResponseMarshaller[T]): ToResponseMarshaller[T]

    Returns the in-scope Marshaller for the given type.

    Returns the in-scope Marshaller for the given type.

    Definition Classes
    MarshallingDirectives

Method directives

  1. def delete: Directive0

    Rejects all non-DELETE requests.

    Rejects all non-DELETE requests.

    Definition Classes
    MethodDirectives
  2. def extractMethod: Directive1[HttpMethod]

    Extracts the request method.

    Extracts the request method.

    Definition Classes
    MethodDirectives
  3. def get: Directive0

    Rejects all non-GET requests.

    Rejects all non-GET requests.

    Definition Classes
    MethodDirectives
  4. def head: Directive0

    Rejects all non-HEAD requests.

    Rejects all non-HEAD requests.

    Definition Classes
    MethodDirectives
  5. def method(httpMethod: HttpMethod): Directive0

    Rejects all requests whose HTTP method does not match the given one.

    Rejects all requests whose HTTP method does not match the given one.

    Definition Classes
    MethodDirectives
  6. def options: Directive0

    Rejects all non-OPTIONS requests.

    Rejects all non-OPTIONS requests.

    Definition Classes
    MethodDirectives
  7. def overrideMethodWithParameter(paramName: String): Directive0

    Changes the HTTP method of the request to the value of the specified query string parameter.

    Changes the HTTP method of the request to the value of the specified query string parameter. If the query string parameter is not specified this directive has no effect. If the query string is specified as something that is not a HTTP method, then this directive completes the request with a 501 Not Implemented response.

    This directive is useful for:

    • Use in combination with JSONP (JSONP only supports GET)
    • Supporting older browsers that lack support for certain HTTP methods. E.g. IE8 does not support PATCH
    Definition Classes
    MethodDirectives
  8. def patch: Directive0

    Rejects all non-PATCH requests.

    Rejects all non-PATCH requests.

    Definition Classes
    MethodDirectives
  9. def post: Directive0

    Rejects all non-POST requests.

    Rejects all non-POST requests.

    Definition Classes
    MethodDirectives
  10. def put: Directive0

    Rejects all non-PUT requests.

    Rejects all non-PUT requests.

    Definition Classes
    MethodDirectives

Miscellaneous directives

  1. def extractClientIP: Directive1[RemoteAddress]

    Extracts the client's IP from either the X-Forwarded-For, Remote-Address, X-Real-IP header or akka.http.scaladsl.model.AttributeKeys.remoteAddress attribute (in that order of priority).

    Extracts the client's IP from either the X-Forwarded-For, Remote-Address, X-Real-IP header or akka.http.scaladsl.model.AttributeKeys.remoteAddress attribute (in that order of priority).

    Definition Classes
    MiscDirectives
  2. def rejectEmptyResponse: Directive0

    Converts responses with an empty entity into (empty) rejections.

    Converts responses with an empty entity into (empty) rejections. This way you can, for example, have the marshalling of a None option be treated as if the request could not be matched.

    Definition Classes
    MiscDirectives
  3. def requestEntityEmpty: Directive0

    Rejects if the request entity is non-empty.

    Rejects if the request entity is non-empty.

    Definition Classes
    MiscDirectives
  4. def requestEntityPresent: Directive0

    Rejects with a RequestEntityExpectedRejection if the request entity is empty.

    Rejects with a RequestEntityExpectedRejection if the request entity is empty. Non-empty requests are passed on unchanged to the inner route.

    Definition Classes
    MiscDirectives
  5. def selectPreferredLanguage(first: Language, more: Language*): Directive1[Language]

    Inspects the request's Accept-Language header and determines, which of the given language alternatives is preferred by the client.

    Inspects the request's Accept-Language header and determines, which of the given language alternatives is preferred by the client. (See http://tools.ietf.org/html/rfc7231#section-5.3.5 for more details on the negotiation logic.) If there are several best language alternatives that the client has equal preference for (even if this preference is zero!) the order of the arguments is used as a tie breaker (First one wins).

    Definition Classes
    MiscDirectives
  6. def validate(check: => Boolean, errorMsg: String): Directive0

    Checks the given condition before running its inner route.

    Checks the given condition before running its inner route. If the condition fails the route is rejected with a ValidationRejection.

    Definition Classes
    MiscDirectives
  7. def withSizeLimit(maxBytes: Long): Directive0

    Fails the stream with akka.http.scaladsl.model.EntityStreamSizeException if its request entity size exceeds given limit.

    Fails the stream with akka.http.scaladsl.model.EntityStreamSizeException if its request entity size exceeds given limit. Limit given as parameter overrides limit configured with akka.http.parsing.max-content-length.

    Beware that request entity size check is executed when entity is consumed.

    Definition Classes
    MiscDirectives
  8. def withoutSizeLimit: Directive0

    Disables the size limit (configured by akka.http.parsing.max-content-length by default) checking on the incoming HttpRequest entity.

    Disables the size limit (configured by akka.http.parsing.max-content-length by default) checking on the incoming HttpRequest entity. Can be useful when handling arbitrarily large data uploads in specific parts of your routes.

    Definition Classes
    MiscDirectives
    Note

    Usage of withoutSizeLimit is not recommended as it turns off the too large payload protection. Therefore, we highly encourage using withSizeLimit instead, providing it with a value high enough to successfully handle the route in need of big entities.

Parameter directives

  1. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec, pdef22: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  2. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  3. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  4. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  5. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  6. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  7. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  8. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  9. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  10. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  11. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  12. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  13. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  14. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  15. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  16. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  17. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  18. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec): Directive[(Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  19. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec): Directive[(Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  20. def formField(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec): Directive[(Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  21. def formField(pdef1: FieldSpec, pdef2: FieldSpec): Directive[(Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  22. def formField(pdef1: FieldSpec): Directive[(Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  23. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec, pdef22: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  24. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec, pdef21: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  25. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec, pdef20: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  26. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec, pdef19: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  27. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec, pdef18: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  28. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec, pdef17: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  29. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec, pdef16: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  30. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec, pdef15: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  31. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec, pdef14: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  32. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec, pdef13: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  33. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec, pdef12: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  34. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec, pdef11: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  35. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec, pdef10: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  36. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec, pdef9: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  37. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec, pdef8: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  38. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec, pdef7: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  39. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec, pdef6: FieldSpec): Directive[(Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  40. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec, pdef5: FieldSpec): Directive[(Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  41. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec, pdef4: FieldSpec): Directive[(Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  42. def formFields(pdef1: FieldSpec, pdef2: FieldSpec, pdef3: FieldSpec): Directive[(Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  43. def formFields(pdef1: FieldSpec, pdef2: FieldSpec): Directive[(Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  44. def formFields(pdef1: FieldSpec): Directive[(Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    FormFieldDirectivesInstances
  45. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec, pdef22: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  46. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  47. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  48. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  49. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  50. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  51. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  52. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  53. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  54. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  55. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  56. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  57. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  58. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  59. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  60. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  61. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  62. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec): Directive[(Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  63. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec): Directive[(Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  64. def parameter(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec): Directive[(Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  65. def parameter(pdef1: ParamSpec, pdef2: ParamSpec): Directive[(Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  66. def parameter(pdef1: ParamSpec): Directive[(Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  67. def parameterMap: Directive1[Map[String, String]]

    Extracts the request's query parameters as a Map[String, String].

    Extracts the request's query parameters as a Map[String, String].

    Definition Classes
    ParameterDirectives
  68. def parameterMultiMap: Directive1[Map[String, List[String]]]

    Extracts the request's query parameters as a Map[String, List[String]].

    Extracts the request's query parameters as a Map[String, List[String]].

    Definition Classes
    ParameterDirectives
  69. def parameterSeq: Directive1[Seq[(String, String)]]

    Extracts the request's query parameters as a Seq[(String, String)].

    Extracts the request's query parameters as a Seq[(String, String)].

    Definition Classes
    ParameterDirectives
  70. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec, pdef22: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  71. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec, pdef21: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  72. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec, pdef20: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  73. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec, pdef19: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  74. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec, pdef18: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  75. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec, pdef17: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  76. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec, pdef16: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  77. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec, pdef15: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  78. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec, pdef14: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  79. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec, pdef13: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  80. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec, pdef12: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  81. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec, pdef11: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  82. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec, pdef10: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  83. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec, pdef9: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  84. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec, pdef8: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  85. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec, pdef7: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  86. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec, pdef6: ParamSpec): Directive[(Out, Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  87. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec, pdef5: ParamSpec): Directive[(Out, Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  88. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec, pdef4: ParamSpec): Directive[(Out, Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  89. def parameters(pdef1: ParamSpec, pdef2: ParamSpec, pdef3: ParamSpec): Directive[(Out, Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  90. def parameters(pdef1: ParamSpec, pdef2: ParamSpec): Directive[(Out, Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances
  91. def parameters(pdef1: ParamSpec): Directive[(Out)]

    Extracts query parameter values from the request.

    Extracts query parameter values from the request. Rejects the request if the defined query parameter matcher(s) don't match.

    Definition Classes
    ParameterDirectivesInstances

Timeout directives

  1. def extractRequestTimeout: Directive1[Duration]

    Return the currently set request timeout.

    Return the currently set request timeout.

    Note that this may be changed in inner directives.

    Definition Classes
    TimeoutDirectives
  2. def withRequestTimeout(timeout: Duration, handler: Option[(HttpRequest) => HttpResponse]): Directive0

    Tries to set a new request timeout and handler (if provided) at the same time.

    Tries to set a new request timeout and handler (if provided) at the same time.

    Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

    handler

    optional custom "timeout response" function. If left None, the default timeout HttpResponse will be used.

    Definition Classes
    TimeoutDirectives
  3. def withRequestTimeout(timeout: Duration, handler: (HttpRequest) => HttpResponse): Directive0

    Tries to set a new request timeout and handler (if provided) at the same time.

    Tries to set a new request timeout and handler (if provided) at the same time.

    Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

    handler

    optional custom "timeout response" function. If left None, the default timeout HttpResponse will be used.

    Definition Classes
    TimeoutDirectives
  4. def withRequestTimeout(timeout: Duration): Directive0

    Tries to set a new request timeout and handler (if provided) at the same time.

    Tries to set a new request timeout and handler (if provided) at the same time.

    Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

    Definition Classes
    TimeoutDirectives
  5. def withRequestTimeoutResponse(handler: (HttpRequest) => HttpResponse): Directive0

    Tries to set a new request timeout handler, which produces the timeout response for a given request.

    Tries to set a new request timeout handler, which produces the timeout response for a given request. Note that the handler must produce the response synchronously and shouldn't block!

    Due to the inherent raciness it is not guaranteed that the update will be applied before the previously set timeout has expired!

    Definition Classes
    TimeoutDirectives
  6. def withoutRequestTimeout: Directive0

    Definition Classes
    TimeoutDirectives

Path directives

  1. def ignoreTrailingSlash: Directive0

    Tries to match the inner route and if it fails with an empty rejection, it tries it again adding (or removing) the trailing slash on the given path.

    Tries to match the inner route and if it fails with an empty rejection, it tries it again adding (or removing) the trailing slash on the given path.

    Definition Classes
    PathDirectives
  2. def path[L](pm: PathMatcher[L]): Directive[L]

    Applies the given PathMatcher to the remaining unmatched path after consuming a leading slash.

    Applies the given PathMatcher to the remaining unmatched path after consuming a leading slash. The matcher has to match the remaining path completely. If matched the value extracted by the PathMatcher is extracted on the directive level.

    Definition Classes
    PathDirectives
  3. def pathEnd: Directive0

    Rejects the request if the unmatchedPath of the RequestContext is non-empty, or said differently: only passes on the request to its inner route if the request path has been matched completely.

    Rejects the request if the unmatchedPath of the RequestContext is non-empty, or said differently: only passes on the request to its inner route if the request path has been matched completely.

    Definition Classes
    PathDirectives
  4. def pathEndOrSingleSlash: Directive0

    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.

    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.

    Note that trailing slash and non-trailing slash URLs are not the same, although they often serve the same content. It is recommended to serve only one URL version and make the other redirect to it using redirectToTrailingSlashIfMissing or redirectToNoTrailingSlashIfPresent directive.

    For example:

    def route = {
      // redirect '/users/' to '/users', '/users/:userId/' to '/users/:userId'
      redirectToNoTrailingSlashIfPresent(Found) {
        pathPrefix("users") {
          concat(
            pathEnd {
              // user list ...
            },
            path(UUID) { userId =>
              // user profile ...
            }
          )
        }
      }
    }

    For further information, refer to:

    Definition Classes
    PathDirectives
    See also

    https://webmasters.googleblog.com/2010/04/to-slash-or-not-to-slash.html

  5. def pathPrefix[L](pm: PathMatcher[L]): Directive[L]

    Applies the given PathMatcher to a prefix of the remaining unmatched path after consuming a leading slash.

    Applies the given PathMatcher to a prefix of the remaining unmatched path after consuming a leading slash. The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

    Definition Classes
    PathDirectives
  6. def pathPrefixTest[L](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher.

    Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. In analogy to the pathPrefix directive a leading slash is implied.

    Definition Classes
    PathDirectives
  7. def pathSingleSlash: Directive0

    Only passes on the request to its inner route if the request path consists of exactly one remaining slash.

    Only passes on the request to its inner route if the request path consists of exactly one remaining slash.

    Definition Classes
    PathDirectives
  8. def pathSuffix[L](pm: PathMatcher[L]): Directive[L]

    Applies the given PathMatcher to a suffix of the remaining unmatchedPath of the RequestContext.

    Applies the given PathMatcher to a suffix of the remaining unmatchedPath of the RequestContext. If matched the value extracted by the PathMatcher is extracted and the matched parts of the path are consumed. Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffix("baz" / "bar") would match /foo/bar/baz!

    Definition Classes
    PathDirectives
  9. def pathSuffixTest[L](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the RequestContext has a suffix matched by the given PathMatcher.

    Checks whether the unmatchedPath of the RequestContext has a suffix matched by the given PathMatcher. However, as opposed to the pathSuffix directive the matched path is not actually "consumed". Note that, for efficiency reasons, the given PathMatcher must match the desired suffix in reversed-segment order, i.e. pathSuffixTest("baz" / "bar") would match /foo/bar/baz!

    Definition Classes
    PathDirectives
  10. def rawPathPrefix[L](pm: PathMatcher[L]): Directive[L]

    Applies the given matcher directly to a prefix of the unmatched path of the RequestContext (i.e.

    Applies the given matcher directly to a prefix of the unmatched path of the RequestContext (i.e. without implicitly consuming a leading slash). The matcher has to match a prefix of the remaining path. If matched the value extracted by the PathMatcher is extracted on the directive level.

    Definition Classes
    PathDirectives
  11. def rawPathPrefixTest[L](pm: PathMatcher[L]): Directive[L]

    Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher.

    Checks whether the unmatchedPath of the RequestContext has a prefix matched by the given PathMatcher. However, as opposed to the pathPrefix directive the matched path is not actually "consumed".

    Definition Classes
    PathDirectives
  12. def redirectToNoTrailingSlashIfPresent(redirectionType: Redirection): Directive0

    If the request path ends with a slash, redirect to the same uri without trailing slash in the path.

    If the request path ends with a slash, redirect to the same uri without trailing slash in the path.

    Note, however, that this directive doesn't apply to a URI consisting of just a single slash. HTTP does not support empty target paths, so that browsers will convert a URI such as http://example.org to http://example.org/ adding the trailing slash.

    Redirecting the single slash path URI would lead to a redirection loop.

    Caveat: pathSingleSlash directive will only match on the root path level inside of this directive.

    Definition Classes
    PathDirectives
  13. def redirectToTrailingSlashIfMissing(redirectionType: Redirection): Directive0

    If the request path doesn't end with a slash, redirect to the same uri with trailing slash in the path.

    If the request path doesn't end with a slash, redirect to the same uri with trailing slash in the path.

    Caveat: path without trailing slash and pathEnd directives will not match inside of this directive.

    Definition Classes
    PathDirectives

Path matchers

  1. abstract class NumberMatcher[T] extends PathMatcher1[T]

    Definition Classes
    PathMatchers
  1. val DoubleNumber: PathMatcher1[Double]

    A PathMatcher that matches and extracts a Double value.

    A PathMatcher that matches and extracts a Double value. The matched string representation is the pure decimal, optionally signed form of a double value, i.e. without exponent.

    Definition Classes
    PathMatchers
  2. val JavaUUID: PathMatcher1[UUID]

    A PathMatcher that matches and extracts a java.util.UUID instance.

    A PathMatcher that matches and extracts a java.util.UUID instance.

    Definition Classes
    PathMatchers
  3. val Neutral: PathMatcher0

    A PathMatcher that always matches, doesn't consume anything and extracts nothing.

    A PathMatcher that always matches, doesn't consume anything and extracts nothing. Serves mainly as a neutral element in PathMatcher composition.

    Definition Classes
    PathMatchers
  4. def Segments(min: Int, max: Int): PathMatcher1[List[String]]

    A PathMatcher that matches between min and max (both inclusively) path segments (separated by slashes) as a List[String].

    A PathMatcher that matches between min and max (both inclusively) path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will *not* be matched.

    Definition Classes
    PathMatchers
  5. def Segments(count: Int): PathMatcher1[List[String]]

    A PathMatcher that matches the given number of path segments (separated by slashes) as a List[String].

    A PathMatcher that matches the given number of path segments (separated by slashes) as a List[String]. If there are more than count segments present the remaining ones will be left unmatched. If the path has a trailing slash this slash will *not* be matched.

    Definition Classes
    PathMatchers
  6. val Segments: PathMatcher1[List[String]]

    A PathMatcher that matches up to 128 remaining segments as a List[String].

    A PathMatcher that matches up to 128 remaining segments as a List[String]. This can also be no segments resulting in the empty list. If the path has a trailing slash this slash will *not* be matched.

    Definition Classes
    PathMatchers
  7. def nothingMatcher[L](implicit arg0: Tuple[L]): PathMatcher[L]

    A PathMatcher that never matches anything.

    A PathMatcher that never matches anything.

    Definition Classes
    PathMatchers
  8. def separateOnSlashes(string: String): PathMatcher0

    Converts a path string containing slashes into a PathMatcher that interprets slashes as path segment separators.

    Converts a path string containing slashes into a PathMatcher that interprets slashes as path segment separators.

    Definition Classes
    PathMatchers
  9. object HexIntNumber extends NumberMatcher[Int]

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Int value.

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

    Definition Classes
    PathMatchers
  10. object HexLongNumber extends NumberMatcher[Long]

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Long value.

    A PathMatcher that efficiently matches a number of hex-digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

    Definition Classes
    PathMatchers
  11. object IntNumber extends NumberMatcher[Int]

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Int value.

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Int value. The matcher will not match 0 digits or a sequence of digits that would represent an Int value larger than Int.MaxValue.

    Definition Classes
    PathMatchers
  12. object LongNumber extends NumberMatcher[Long]

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Long value.

    A PathMatcher that efficiently matches a number of digits and extracts their (non-negative) Long value. The matcher will not match 0 digits or a sequence of digits that would represent an Long value larger than Long.MaxValue.

    Definition Classes
    PathMatchers
  13. object PathEnd extends PathMatcher0

    A PathMatcher that matches the very end of the requests URI path.

    A PathMatcher that matches the very end of the requests URI path.

    Definition Classes
    PathMatchers
  14. object Remaining extends PathMatcher1[String]

    A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path as an (encoded!) String.

    A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path as an (encoded!) String. If you need access to the remaining unencoded elements of the path use the RemainingPath matcher!

    Definition Classes
    PathMatchers
  15. object RemainingPath extends PathMatcher1[Path]

    A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path.

    A PathMatcher that matches and extracts the complete remaining, unmatched part of the request's URI path.

    Definition Classes
    PathMatchers
  16. object Segment extends PathMatcher1[String]

    A PathMatcher that matches if the unmatched path starts with a path segment.

    A PathMatcher that matches if the unmatched path starts with a path segment. If so the path segment is extracted as a String.

    Definition Classes
    PathMatchers
  17. object Slash extends PathMatcher0

    A PathMatcher that matches a single slash character ('/').

    A PathMatcher that matches a single slash character ('/').

    Definition Classes
    PathMatchers

Path matcher implicits

  1. implicit def _regex2PathMatcher(regex: Regex): PathMatcher1[String]

    Creates a PathMatcher that consumes (a prefix of) the first path segment if the path begins with a segment (a prefix of) which matches the given regex.

    Creates a PathMatcher that consumes (a prefix of) the first path segment if the path begins with a segment (a prefix of) which matches the given regex. Extracts either the complete match (if the regex doesn't contain a capture group) or the capture group (if the regex contains exactly one). If the regex contains more than one capture group the method throws an IllegalArgumentException.

    Definition Classes
    ImplicitPathMatcherConstruction
  2. implicit def _segmentStringToPathMatcher(segment: String): PathMatcher0

    Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment).

    Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment).

    Definition Classes
    ImplicitPathMatcherConstruction
  3. implicit def _stringExtractionPair2PathMatcher[T](tuple: (String, T)): PathMatcher1[T]

    Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment) and extracts a given value.

    Creates a PathMatcher that consumes (a prefix of) the first path segment (if the path begins with a segment) and extracts a given value.

    Definition Classes
    ImplicitPathMatcherConstruction
  4. implicit def _stringNameOptionReceptacle2PathMatcher(nr: NameOptionReceptacle[String]): PathMatcher0

  5. implicit def _valueMap2PathMatcher[T](valueMap: Map[String, T]): PathMatcher1[T]

    Creates a PathMatcher from the given Map of path segments (prefixes) to extracted values.

    Creates a PathMatcher from the given Map of path segments (prefixes) to extracted values. If the unmatched path starts with a segment having one of the maps keys as a prefix the matcher consumes this path segment (prefix) and extracts the corresponding map value. For keys sharing a common prefix the longest matching prefix is selected.

    Definition Classes
    ImplicitPathMatcherConstruction

Range directives

  1. def withRangeSupport: Directive0

    Answers GET requests with an Accept-Ranges: bytes header and converts HttpResponses coming back from its inner route into partial responses if the initial request contained a valid Range request header.

    Answers GET requests with an Accept-Ranges: bytes header and converts HttpResponses coming back from its inner route into partial responses if the initial request contained a valid Range request header. The requested byte-ranges may be coalesced. This directive is transparent to non-GET requests Rejects requests with unsatisfiable ranges UnsatisfiableRangeRejection. Rejects requests with too many expected ranges.

    Note: if you want to combine this directive with conditional(...) you need to put it on the *inside* of the conditional(...) directive, i.e. conditional(...) must be on a higher level in your route structure in order to function correctly.

    Definition Classes
    RangeDirectives
    See also

    https://tools.ietf.org/html/rfc7233

Response directives

  1. def respondWithDefaultHeader(responseHeader: HttpHeader): Directive0

    Adds the given response header to all HTTP responses of its inner Route, if the response from the inner Route doesn't already contain a header with the same name.

    Adds the given response header to all HTTP responses of its inner Route, if the response from the inner Route doesn't already contain a header with the same name.

    Definition Classes
    RespondWithDirectives
  2. def respondWithDefaultHeaders(responseHeaders: Seq[HttpHeader]): Directive0

    Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

    Adds the given response headers to all HTTP responses of its inner Route, if a header already exists it is not added again.

    Definition Classes
    RespondWithDirectives
  3. def respondWithHeader(responseHeader: HttpHeader): Directive0

    Unconditionally adds the given response header to all HTTP responses of its inner Route.

    Unconditionally adds the given response header to all HTTP responses of its inner Route.

    Definition Classes
    RespondWithDirectives
  4. def respondWithHeaders(responseHeaders: Seq[HttpHeader]): Directive0

    Unconditionally adds the given response headers to all HTTP responses of its inner Route.

    Unconditionally adds the given response headers to all HTTP responses of its inner Route.

    Definition Classes
    RespondWithDirectives

Route directives

  1. def complete[T](status: StatusCode, headers: Seq[HttpHeader], v: => T)(implicit m: ToEntityMarshaller[T]): StandardRoute

    Completes the request using the given arguments.

    Completes the request using the given arguments.

    Definition Classes
    RouteDirectives
  2. def complete[T](status: StatusCode, v: => T)(implicit m: ToEntityMarshaller[T]): StandardRoute

    Completes the request using the given arguments.

    Completes the request using the given arguments.

    Definition Classes
    RouteDirectives
  3. def complete(m: => ToResponseMarshallable): StandardRoute

    Completes the request using the given arguments.

    Completes the request using the given arguments.

    Definition Classes
    RouteDirectives
  4. def failWith(error: Throwable): StandardRoute

    Bubbles the given error up the response chain, where it is dealt with by the closest handleExceptions directive and its ExceptionHandler.

    Bubbles the given error up the response chain, where it is dealt with by the closest handleExceptions directive and its ExceptionHandler.

    Definition Classes
    RouteDirectives
  5. def handle(handler: PartialFunction[HttpRequest, Future[HttpResponse]], rejections: Seq[Rejection]): StandardRoute

    Handle the request using an asynchronous partial function.

    Handle the request using an asynchronous partial function.

    This directive can be used to include external components request processing components defined as PartialFunction (like those provided by akka-grpc) into a routing tree defined as routes.

    rejections

    The list of rejections to reject with if the handler is not defined for a request.

    Definition Classes
    RouteDirectives
  6. def handle(handler: PartialFunction[HttpRequest, Future[HttpResponse]]): StandardRoute

    Handle the request using an asynchronous partial function.

    Handle the request using an asynchronous partial function.

    This directive can be used to include external components request processing components defined as PartialFunction (like those provided by akka-grpc) into a routing tree defined as routes.

    When the partial function is not defined for a request, the request is rejected with an empty list of rejections which is equivalent to a "Not Found" rejection.

    Definition Classes
    RouteDirectives
  7. def handle(handler: (HttpRequest) => Future[HttpResponse]): StandardRoute

    Handle the request using a function.

    Handle the request using a function.

    Definition Classes
    RouteDirectives
  8. def handleSync(handler: PartialFunction[HttpRequest, HttpResponse], rejections: Seq[Rejection]): StandardRoute

    Handle the request using a synchronous partial function.

    Handle the request using a synchronous partial function.

    This directive can be used to include external components request processing components defined as PartialFunction (like those provided by akka-grpc) into a routing tree defined as routes.

    rejections

    The list of rejections to reject with if the handler is not defined for a request.

    Definition Classes
    RouteDirectives
  9. def handleSync(handler: PartialFunction[HttpRequest, HttpResponse]): StandardRoute

    Handle the request using a synchronous partial function.

    Handle the request using a synchronous partial function.

    This directive can be used to include external components request processing components defined as PartialFunction (like those provided by akka-grpc) into a routing tree defined as routes.

    When the partial function is not defined for a request, the request is rejected with an empty list of rejections which is equivalent to a "Not Found" rejection.

    Definition Classes
    RouteDirectives
  10. def handleSync(handler: (HttpRequest) => HttpResponse): StandardRoute

    Handle the request using a function.

    Handle the request using a function.

    Definition Classes
    RouteDirectives
  11. def redirect(uri: Uri, redirectionType: Redirection): StandardRoute

    Completes the request with redirection response of the given type to the given URI.

    Completes the request with redirection response of the given type to the given URI.

    Definition Classes
    RouteDirectives
  12. def reject(rejections: Rejection*): StandardRoute

    Rejects the request with the given rejections.

    Rejects the request with the given rejections.

    Definition Classes
    RouteDirectives
  13. def reject: StandardRoute

    Rejects the request with an empty set of rejections.

    Rejects the request with an empty set of rejections.

    Definition Classes
    RouteDirectives

Scheme directives

  1. def extractScheme: Directive1[String]

    Extracts the Uri scheme from the request.

    Extracts the Uri scheme from the request.

    Definition Classes
    SchemeDirectives
  2. def scheme(name: String): Directive0

    Rejects all requests whose Uri scheme does not match the given one.

    Rejects all requests whose Uri scheme does not match the given one.

    Definition Classes
    SchemeDirectives

Security directives

  1. type AsyncAuthenticator[T] = (Credentials) => Future[Option[T]]

    Definition Classes
    SecurityDirectives
  2. type AsyncAuthenticatorPF[T] = PartialFunction[Credentials, Future[T]]

    Definition Classes
    SecurityDirectives
  3. type AuthenticationResult[+T] = Either[HttpChallenge, T]

    The result of an HTTP authentication attempt is either the user object or an HttpChallenge to present to the browser.

    The result of an HTTP authentication attempt is either the user object or an HttpChallenge to present to the browser.

    Definition Classes
    SecurityDirectives
  4. type Authenticator[T] = (Credentials) => Option[T]

    Definition Classes
    SecurityDirectives
  5. type AuthenticatorPF[T] = PartialFunction[Credentials, T]

    Definition Classes
    SecurityDirectives
  1. def authenticateBasic[T](realm: String, authenticator: Authenticator[T]): AuthenticationDirective[T]

    Wraps the inner route with Http Basic authentication support using a given Authenticator[T].

    Wraps the inner route with Http Basic authentication support using a given Authenticator[T]. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  2. def authenticateBasicAsync[T](realm: String, authenticator: AsyncAuthenticator[T]): AuthenticationDirective[T]

    Wraps the inner route with Http Basic authentication support.

    Wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  3. def authenticateBasicPF[T](realm: String, authenticator: AuthenticatorPF[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with Http Basic authentication support.

    A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  4. def authenticateBasicPFAsync[T](realm: String, authenticator: AsyncAuthenticatorPF[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with Http Basic authentication support.

    A directive that wraps the inner route with Http Basic authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  5. def authenticateOAuth2[T](realm: String, authenticator: Authenticator[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support.

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  6. def authenticateOAuth2Async[T](realm: String, authenticator: AsyncAuthenticator[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support.

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  7. def authenticateOAuth2PF[T](realm: String, authenticator: AuthenticatorPF[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support.

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  8. def authenticateOAuth2PFAsync[T](realm: String, authenticator: AsyncAuthenticatorPF[T]): AuthenticationDirective[T]

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support.

    A directive that wraps the inner route with OAuth2 Bearer Token authentication support. The given authenticator determines whether the credentials in the request are valid and, if so, which user object to supply to the inner route.

    Definition Classes
    SecurityDirectives
  9. def authenticateOrRejectWithChallenge[C <: HttpCredentials, T](authenticator: (Option[C]) => Future[AuthenticationResult[T]])(implicit arg0: ClassTag[C]): AuthenticationDirective[T]

    Lifts an authenticator function into a directive.

    Lifts an authenticator function into a directive. Same as authenticateOrRejectWithChallenge but only applies the authenticator function with a certain type of credentials.

    Definition Classes
    SecurityDirectives
  10. def authenticateOrRejectWithChallenge[T](authenticator: (Option[HttpCredentials]) => Future[AuthenticationResult[T]]): AuthenticationDirective[T]

    Lifts an authenticator function into a directive.

    Lifts an authenticator function into a directive. The authenticator function gets passed in credentials from the Authorization header of the request. If the function returns Right(user) the user object is provided to the inner route. If the function returns Left(challenge) the request is rejected with an AuthenticationFailedRejection that contains this challenge to be added to the response.

    Definition Classes
    SecurityDirectives
  11. def authorize(check: (RequestContext) => Boolean): Directive0

    Applies the given authorization check to the request.

    Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

    Definition Classes
    SecurityDirectives
  12. def authorize(check: => Boolean): Directive0

    Applies the given authorization check to the request.

    Applies the given authorization check to the request. If the check fails the route is rejected with an AuthorizationFailedRejection.

    Definition Classes
    SecurityDirectives
  13. def authorizeAsync(check: (RequestContext) => Future[Boolean]): Directive0

    Asynchronous version of authorize.

    Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

    Definition Classes
    SecurityDirectives
  14. def authorizeAsync(check: => Future[Boolean]): Directive0

    Asynchronous version of authorize.

    Asynchronous version of authorize. If the Future fails or is completed with false authorization fails and the route is rejected with an AuthorizationFailedRejection.

    Definition Classes
    SecurityDirectives
  15. def extractCredentials: Directive1[Option[HttpCredentials]]

    Extracts the potentially present HttpCredentials provided with the request's Authorization header.

    Extracts the potentially present HttpCredentials provided with the request's Authorization header.

    Definition Classes
    SecurityDirectives

WebSocket directives

  1. def extractOfferedWsProtocols: Directive1[Seq[String]]

    Extract the list of WebSocket subprotocols as offered by the client in the Sec-WebSocket-Protocol header if this is a WebSocket request.

    Extract the list of WebSocket subprotocols as offered by the client in the Sec-WebSocket-Protocol header if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

    Definition Classes
    WebSocketDirectives
  2. def extractWebSocketUpgrade: Directive1[WebSocketUpgrade]

    Extract the WebSocketUpgrade attribute if this is a WebSocket request.

    Extract the WebSocketUpgrade attribute if this is a WebSocket request. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

    Definition Classes
    WebSocketDirectives
  3. def handleWebSocketMessages(handler: Flow[Message, Message, Any]): Route

    Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

    Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

    Definition Classes
    WebSocketDirectives
  4. def handleWebSocketMessagesForOptionalProtocol(handler: Flow[Message, Message, Any], subprotocol: Option[String]): Route

    Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

    Handles WebSocket requests with the given handler and rejects other requests with an ExpectedWebSocketRequestRejection.

    If the subprotocol parameter is None any WebSocket request is accepted. If the subprotocol parameter is Some(protocol) a WebSocket request is only accepted if the list of subprotocols supported by the client (as announced in the WebSocket request) contains protocol. If the client did not offer the protocol in question the request is rejected with an UnsupportedWebSocketSubprotocolRejection rejection.

    To support several subprotocols you may chain several handleWebSocketMessagesForOptionalProtocol routes.

    Definition Classes
    WebSocketDirectives
  5. def handleWebSocketMessagesForProtocol(handler: Flow[Message, Message, Any], subprotocol: String): Route

    Handles WebSocket requests with the given handler if the given subprotocol is offered in the request and rejects other requests with an ExpectedWebSocketRequestRejection or an UnsupportedWebSocketSubprotocolRejection.

    Handles WebSocket requests with the given handler if the given subprotocol is offered in the request and rejects other requests with an ExpectedWebSocketRequestRejection or an UnsupportedWebSocketSubprotocolRejection.

    Definition Classes
    WebSocketDirectives
  6. def extractUpgradeToWebSocket: Directive1[UpgradeToWebSocket]

    Extract the UpgradeToWebSocket header if existent.

    Extract the UpgradeToWebSocket header if existent. Rejects with an ExpectedWebSocketRequestRejection, otherwise.

    Definition Classes
    WebSocketDirectives
    Annotations
    @deprecated
    Deprecated

    (Since version 10.2.0) use extractWebSocketUpgrade instead

Route concatenation

  1. implicit def _enhanceRouteWithConcatenation(route: Route): RouteWithConcatenation

    Definition Classes
    RouteConcatenation

Ungrouped

  1. type RequestToSourceUnmarshaller[T] = Unmarshaller[HttpRequest, Source[T, NotUsed]]
  1. implicit def _string2NR(string: String): NameReceptacle[String]
    Definition Classes
    ToNameReceptacleEnhancements
    Annotations
    @implicitAmbiguous()
  2. implicit def _symbol2NR(symbol: Symbol): NameReceptacle[String]
    Definition Classes
    ToNameReceptacleEnhancements
  3. final def asSourceOf[T](support: EntityStreamingSupport)(implicit um: FromByteStringUnmarshaller[T]): RequestToSourceUnmarshaller[T]

    Extracts entity as akka.stream.scaladsl.Source of elements of type T.

    Extracts entity as akka.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

    - 1st: chunk-up the incoming ByteStrings by applying the Content-Type-aware framing - 2nd: apply the Unmarshaller (from ByteString to T) for each of the respective "chunks" (e.g. for each JSON element contained within an array).

    The request will be rejected with an akka.http.scaladsl.server.UnsupportedRequestContentTypeRejection if its ContentType is not supported by the used framing or unmarshaller.

    Cancelling extracted akka.stream.scaladsl.Source closes the connection abruptly (same as cancelling the entity.dataBytes).

    See also MiscDirectives.withoutSizeLimit as you may want to allow streaming infinite streams of data in this route. By default the uploaded data is limited by the akka.http.parsing.max-content-length.

    Definition Classes
    FramedEntityStreamingDirectives
  4. final def asSourceOf[T](implicit um: FromByteStringUnmarshaller[T], support: EntityStreamingSupport): RequestToSourceUnmarshaller[T]

    Extracts entity as akka.stream.scaladsl.Source of elements of type T.

    Extracts entity as akka.stream.scaladsl.Source of elements of type T. This is achieved by applying the implicitly provided (in the following order):

    - 1st: chunk-up the incoming ByteStrings by applying the Content-Type-aware framing - 2nd: apply the Unmarshaller (from ByteString to T) for each of the respective "chunks" (e.g. for each JSON element contained within an array).

    The request will be rejected with an akka.http.scaladsl.server.UnsupportedRequestContentTypeRejection if its ContentType is not supported by the used framing or unmarshaller.

    Cancelling extracted akka.stream.scaladsl.Source closes the connection abruptly (same as cancelling the entity.dataBytes).

    See also MiscDirectives.withoutSizeLimit as you may want to allow streaming infinite streams of data in this route. By default the uploaded data is limited by the akka.http.parsing.max-content-length.

    Definition Classes
    FramedEntityStreamingDirectives
  5. def binding(): Try[ServerBinding]

    It tries to retrieve the ServerBinding if the server has been successfully started.

    It tries to retrieve the ServerBinding if the server has been successfully started. It fails otherwise. You can use this method to attempt to retrieve the ServerBinding at any point in time to, for example, stop the server due to unexpected circumstances.

  6. def concat(routes: Route*): Route

    Tries the supplied routes in sequence, returning the result of the first route that doesn't reject the request.

    Tries the supplied routes in sequence, returning the result of the first route that doesn't reject the request. This is an alternative to direct usage of the infix ~ operator. The ~ can be prone to programmer error, because if it is omitted, the program will still be syntactically correct, but will not actually attempt to match multiple routes, as intended.

    routes

    subroutes to concatenate

    returns

    the concatenated route

    Definition Classes
    RouteConcatenation
  7. def cors(settings: CorsSettings): Directive0

    Wraps its inner route with support for the CORS mechanism, enabling cross origin requests using the given cors settings.

    Wraps its inner route with support for the CORS mechanism, enabling cross origin requests using the given cors settings.

    Definition Classes
    CorsDirectives
  8. def cors(): Directive0

    Wraps its inner route with support for the CORS mechanism, enabling cross origin requests using the default cors configuration from the actor system.

    Wraps its inner route with support for the CORS mechanism, enabling cross origin requests using the default cors configuration from the actor system.

    Definition Classes
    CorsDirectives
  9. def extractClientCertificate: Directive1[X509Certificate]

    Extract the client certificate, or reject the request with a TlsClientUnverifiedRejection.

    Extract the client certificate, or reject the request with a TlsClientUnverifiedRejection.

    Using this directives requires tls-session info parsing to be enabled: akka.http.server.parsing.tls-session-info-header = on

    The javax.net.ssl.SSLEngine for the server needs to be set up with setWantClientAuth(true) or setNeedClientAuth(true) or else every request will be failed.

    Definition Classes
    TlsDirectives
  10. def extractSslSession: Directive1[SSLSession]

    Extract the current SSLSession.

    Extract the current SSLSession.

    Note: Using this directives requires tls-session info parsing to be enabled: akka.http.server.parsing.tls-session-info-header = on

    Definition Classes
    TlsDirectives
  11. def not(self: PathMatcher[_]): PathMatcher0
    Definition Classes
    PathMatchers
  12. def requireClientCertificateIdentity(cnRegex: Regex): Directive0

    Require the client to be authenticated, if not reject the request with a TlsClientUnverifiedRejection, also require the one of the client certificate ip or dns SANs (Subject Alternative Name) or if non exists, the CN (Common Name) to match the given regular expression, if not the request is rejected with a TlsClientIdentityRejection

    Require the client to be authenticated, if not reject the request with a TlsClientUnverifiedRejection, also require the one of the client certificate ip or dns SANs (Subject Alternative Name) or if non exists, the CN (Common Name) to match the given regular expression, if not the request is rejected with a TlsClientIdentityRejection

    Using this directives requires tls-session info parsing to be enabled: akka.http.server.parsing.tls-session-info-header = on

    The javax.net.ssl.SSLEngine for the server needs to be set up with setWantClientAuth(true) or setNeedClientAuth(true) or else every request will be failed.

    Definition Classes
    TlsDirectives
  13. def respondWithDefaultHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0
    Definition Classes
    RespondWithDirectives
  14. def respondWithHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0
    Definition Classes
    RespondWithDirectives
  15. def startServer(host: String, port: Int, settings: ServerSettings, system: Option[ActorSystem]): Unit

    Start a server on the specified host and port, using the provided settings and ActorSystem if present.

    Start a server on the specified host and port, using the provided settings and ActorSystem if present. Note that this method is blocking.

    system

    ActorSystem to use for starting the app, if None is passed in a new default ActorSystem will be created instead, which will be terminated when the server is stopped.

  16. def startServer(host: String, port: Int, settings: ServerSettings, system: ActorSystem): Unit

    Start a server on the specified host and port, using the provided settings and ActorSystem.

    Start a server on the specified host and port, using the provided settings and ActorSystem. Note that this method is blocking.

    system

    ActorSystem to use for starting the app, if null is passed in a new default ActorSystem will be created instead, which will be terminated when the server is stopped.

  17. def startServer(host: String, port: Int, settings: ServerSettings): Unit

    Start a server on the specified host and port, using the provided settings.

    Start a server on the specified host and port, using the provided settings. Note that this method is blocking.

  18. def startServer(host: String, port: Int, system: ActorSystem): Unit

    Start a server on the specified host and port, using the provided ActorSystem.

    Start a server on the specified host and port, using the provided ActorSystem. Note that this method is blocking

    system

    ActorSystem to use for starting the app, if null is passed in a new default ActorSystem will be created instead, which will be terminated when the server is stopped.

  19. def startServer(host: String, port: Int): Unit

    Start a server on the specified host and port.

    Start a server on the specified host and port. Note that this method is blocking