abstract class HttpApp extends Directives
DEPRECATED, consider https://doc.akka.io/libraries/akka-http/current/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
- Grouped
- Alphabetic
- By Inheritance
- HttpApp
- Directives
- TlsDirectives
- CorsDirectives
- AttributeDirectives
- FramedEntityStreamingDirectives
- WebSocketDirectives
- SecurityDirectives
- SchemeDirectives
- RouteDirectives
- RespondWithDirectives
- RangeDirectives
- PathDirectives
- ImplicitPathMatcherConstruction
- PathMatchers
- TimeoutDirectives
- ParameterDirectives
- ParameterDirectivesInstances
- MiscDirectives
- MethodDirectives
- MarshallingDirectives
- HostDirectives
- HeaderDirectives
- FutureDirectives
- FormFieldDirectives
- ToNameReceptacleEnhancements
- FormFieldDirectivesInstances
- FileUploadDirectives
- FileAndResourceDirectives
- ExecutionDirectives
- CodingDirectives
- DebuggingDirectives
- CookieDirectives
- CacheConditionDirectives
- BasicDirectives
- RouteConcatenation
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new HttpApp()
Type Members
- type AsyncAuthenticator[T] = (Credentials) => Future[Option[T]]
- Definition Classes
- SecurityDirectives
- type AsyncAuthenticatorPF[T] = PartialFunction[Credentials, Future[T]]
- Definition Classes
- SecurityDirectives
- 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
- type Authenticator[T] = (Credentials) => Option[T]
- Definition Classes
- SecurityDirectives
- type AuthenticatorPF[T] = PartialFunction[Credentials, T]
- Definition Classes
- SecurityDirectives
- type RequestToSourceUnmarshaller[T] = Unmarshaller[HttpRequest, Source[T, NotUsed]]
- Definition Classes
- FramedEntityStreamingDirectives
- abstract class NumberMatcher[T] extends PathMatcher1[T]
- Definition Classes
- PathMatchers
Abstract Value Members
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (HttpApp, B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- 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
- 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
- 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
- def Segments(min: Int, max: Int): PathMatcher1[List[String]]
A PathMatcher that matches between
min
andmax
(both inclusively) path segments (separated by slashes) as a List[String].A PathMatcher that matches between
min
andmax
(both inclusively) path segments (separated by slashes) as a List[String]. If there are more thancount
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
- 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
- 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
- def _defaultClassLoader: ClassLoader
- Attributes
- protected[http]
- Definition Classes
- FileAndResourceDirectives
- implicit def _enhanceRouteWithConcatenation(route: Route): RouteWithConcatenation
- Definition Classes
- RouteConcatenation
- 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
- 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
- implicit def _string2NR(string: String): NameReceptacle[String]
- Definition Classes
- ToNameReceptacleEnhancements
- Annotations
- @implicitAmbiguous()
- 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
- implicit def _stringNameOptionReceptacle2PathMatcher(nr: NameOptionReceptacle[String]): PathMatcher0
- Definition Classes
- ImplicitPathMatcherConstruction
- implicit def _symbol2NR(symbol: Symbol): NameReceptacle[String]
- Definition Classes
- ToNameReceptacleEnhancements
- 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
- 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
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- 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 toT
) 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
orunmarshaller
.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
- 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 toT
) 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
orunmarshaller
.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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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 returnsLeft(challenge)
the request is rejected with an AuthenticationFailedRejection that contains this challenge to be added to the response.- Definition Classes
- SecurityDirectives
- 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
- 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
- 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
- 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
- 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.
- 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
- 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
- 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
- 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
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- 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
- 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
- def complete(m: => ToResponseMarshallable): StandardRoute
Completes the request using the given arguments.
Completes the request using the given arguments.
- Definition Classes
- RouteDirectives
- 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 typeThrowable
."Unwraps" a
Future[T]
and runs the inner route when the future has failed with the future's failure exception as an extraction of typeThrowable
. 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
- 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
- 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
- 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 thewithRangeSupport(...)
directive, i.e.withRangeSupport(...)
must be on a deeper level in your route structure in order to function correctly.- Definition Classes
- CacheConditionDirectives
- 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 thewithRangeSupport(...)
directive, i.e.withRangeSupport(...)
must be on a deeper level in your route structure in order to function correctly.- Definition Classes
- CacheConditionDirectives
- 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 thewithRangeSupport(...)
directive, i.e.withRangeSupport(...)
must be on a deeper level in your route structure in order to function correctly.- Definition Classes
- CacheConditionDirectives
- 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 thewithRangeSupport(...)
directive, i.e.withRangeSupport(...)
must be on a deeper level in your route structure in order to function correctly.- Definition Classes
- CacheConditionDirectives
- 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
- 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
- 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
- def decodeRequest: Directive0
Decompresses the incoming request if it is
gzip
ordeflate
compressed.Decompresses the incoming request if it is
gzip
ordeflate
compressed. Uncompressed requests are passed through untouched. If the request encoded with another encoding the request is rejected with anUnsupportedRequestEncodingRejection
.- Definition Classes
- CodingDirectives
- 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
- 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
- def delete: Directive0
Rejects all non-DELETE requests.
Rejects all non-DELETE requests.
- Definition Classes
- MethodDirectives
- 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
- 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
- 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
- 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 thefirst
encoder.If the
Accept-Encoding
header is empty andNoCoding
is part of the encoders then no response encoding is used. Otherwise the request is rejected.- Definition Classes
- CodingDirectives
- def ensuring(cond: (HttpApp) => Boolean, msg: => Any): HttpApp
- def ensuring(cond: (HttpApp) => Boolean): HttpApp
- def ensuring(cond: Boolean, msg: => Any): HttpApp
- def ensuring(cond: Boolean): HttpApp
- 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
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- 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
- 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
- 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)
orsetNeedClientAuth(true)
or else every request will be failed.- Definition Classes
- TlsDirectives
- 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
- 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
- def extractDataBytes: Directive1[Source[ByteString, Any]]
Extracts the entities
dataBytes
akka.stream.scaladsl.Source from the akka.http.scaladsl.server.RequestContext.Extracts the entities
dataBytes
akka.stream.scaladsl.Source from the akka.http.scaladsl.server.RequestContext.- Definition Classes
- BasicDirectives
- def extractExecutionContext: Directive1[ExecutionContextExecutor]
Extracts the scala.concurrent.ExecutionContextExecutor from the akka.http.scaladsl.server.RequestContext.
Extracts the scala.concurrent.ExecutionContextExecutor from the akka.http.scaladsl.server.RequestContext.
- Definition Classes
- BasicDirectives
- 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
- def extractLog: Directive1[LoggingAdapter]
Extracts the akka.event.LoggingAdapter from the akka.http.scaladsl.server.RequestContext.
Extracts the akka.event.LoggingAdapter from the akka.http.scaladsl.server.RequestContext.
- Definition Classes
- BasicDirectives
- def extractMatchedPath: Directive1[Path]
Extracts the already matched path from the RequestContext.
Extracts the already matched path from the RequestContext.
- Definition Classes
- BasicDirectives
- def extractMaterializer: Directive1[Materializer]
Extracts the akka.stream.Materializer from the akka.http.scaladsl.server.RequestContext.
Extracts the akka.stream.Materializer from the akka.http.scaladsl.server.RequestContext.
- Definition Classes
- BasicDirectives
- def extractMethod: Directive1[HttpMethod]
Extracts the request method.
Extracts the request method.
- Definition Classes
- MethodDirectives
- 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
- def extractParserSettings: Directive1[ParserSettings]
Extracts the akka.http.scaladsl.settings.ParserSettings from the akka.http.scaladsl.server.RequestContext.
Extracts the akka.http.scaladsl.settings.ParserSettings from the akka.http.scaladsl.server.RequestContext.
- Definition Classes
- BasicDirectives
- def extractRequest: Directive1[HttpRequest]
Extracts the current HttpRequest instance.
Extracts the current HttpRequest instance.
- Definition Classes
- BasicDirectives
- def extractRequestContext: Directive1[RequestContext]
Extracts the akka.http.scaladsl.server.RequestContext itself.
Extracts the akka.http.scaladsl.server.RequestContext itself.
- Definition Classes
- BasicDirectives
- def extractRequestEntity: Directive1[RequestEntity]
Extracts the akka.http.scaladsl.model.RequestEntity from the akka.http.scaladsl.server.RequestContext.
Extracts the akka.http.scaladsl.model.RequestEntity from the akka.http.scaladsl.server.RequestContext.
- Definition Classes
- BasicDirectives
- 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
- def extractScheme: Directive1[String]
Extracts the Uri scheme from the request.
Extracts the Uri scheme from the request.
- Definition Classes
- SchemeDirectives
- 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
- 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
- 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
- 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
- def extractUnmatchedPath: Directive1[Path]
Extracts the yet unmatched path from the RequestContext.
Extracts the yet unmatched path from the RequestContext.
- Definition Classes
- BasicDirectives
- def extractUri: Directive1[Uri]
Extracts the complete request URI.
Extracts the complete request URI.
- Definition Classes
- BasicDirectives
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- def get: Directive0
Rejects all non-GET requests.
Rejects all non-GET requests.
- Definition Classes
- MethodDirectives
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- def handle(handler: (HttpRequest) => Future[HttpResponse]): StandardRoute
Handle the request using a function.
Handle the request using a function.
- Definition Classes
- RouteDirectives
- 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
- 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
- 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
- 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
- def handleSync(handler: (HttpRequest) => HttpResponse): StandardRoute
Handle the request using a function.
Handle the request using a function.
- Definition Classes
- RouteDirectives
- 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
- 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 thesubprotocol
parameter isSome(protocol)
a WebSocket request is only accepted if the list of subprotocols supported by the client (as announced in the WebSocket request) containsprotocol
. 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
- 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
- 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
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- def head: Directive0
Rejects all non-HEAD requests.
Rejects all non-HEAD requests.
- Definition Classes
- MethodDirectives
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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
- 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
- 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
- def logResult(magnet: LoggingMagnet[(RouteResult) => Unit]): Directive0
Produces a log entry for every RouteResult.
Produces a log entry for every RouteResult.
- Definition Classes
- DebuggingDirectives
- def mapInnerRoute(f: (Route) => Route): Directive0
- Definition Classes
- BasicDirectives
- def mapRejections(f: (Seq[Rejection]) => Seq[Rejection]): Directive0
- Definition Classes
- BasicDirectives
- def mapRequest(f: (HttpRequest) => HttpRequest): Directive0
- Definition Classes
- BasicDirectives
- def mapRequestContext(f: (RequestContext) => RequestContext): Directive0
- Definition Classes
- BasicDirectives
- def mapResponse(f: (HttpResponse) => HttpResponse): Directive0
- Definition Classes
- BasicDirectives
- def mapResponseEntity(f: (ResponseEntity) => ResponseEntity): Directive0
- Definition Classes
- BasicDirectives
- def mapResponseHeaders(f: (Seq[HttpHeader]) => Seq[HttpHeader]): Directive0
- Definition Classes
- BasicDirectives
- def mapRouteResult(f: (RouteResult) => RouteResult): Directive0
- Definition Classes
- BasicDirectives
- def mapRouteResultFuture(f: (Future[RouteResult]) => Future[RouteResult]): Directive0
- Definition Classes
- BasicDirectives
- def mapRouteResultPF(f: PartialFunction[RouteResult, RouteResult]): Directive0
- Definition Classes
- BasicDirectives
- def mapRouteResultWith(f: (RouteResult) => Future[RouteResult]): Directive0
- Definition Classes
- BasicDirectives
- def mapRouteResultWithPF(f: PartialFunction[RouteResult, Future[RouteResult]]): Directive0
- Definition Classes
- BasicDirectives
- 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
- 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
- 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
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def not(self: PathMatcher[_]): PathMatcher0
- Definition Classes
- PathMatchers
- def nothingMatcher[L](implicit arg0: Tuple[L]): PathMatcher[L]
A PathMatcher that never matches anything.
A PathMatcher that never matches anything.
- Definition Classes
- PathMatchers
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- 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 typeTry[T]
."Unwraps" a
Future[T]
and runs the inner route after future completion with the future's value as an extraction of typeTry[T]
.- Definition Classes
- FutureDirectives
- 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 typeT
if the suppliedCircuitBreaker
is closed."Unwraps" a
Future[T]
and runs the inner route after future completion with the future's value as an extraction of typeT
if the suppliedCircuitBreaker
is closed.If the supplied CircuitBreaker is open the request is rejected with a CircuitBreakerOpenRejection.
- Definition Classes
- FutureDirectives
- 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 typeT
."Unwraps" a
Future[T]
and runs the inner route after future completion with the future's value as an extraction of typeT
. If the future fails its failure Throwable is bubbled up to the nearest ExceptionHandler. If typeT
is already a Tuple it is directly expanded into the respective number of extractions.- Definition Classes
- FutureDirectives
- 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
- 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 ofNone
is extracted.- Definition Classes
- CookieDirectives
- 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
- 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
- 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
- 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
- def options: Directive0
Rejects all non-OPTIONS requests.
Rejects all non-OPTIONS requests.
- Definition Classes
- MethodDirectives
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- def patch: Directive0
Rejects all non-PATCH requests.
Rejects all non-PATCH requests.
- Definition Classes
- MethodDirectives
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- def post: Directive0
Rejects all non-POST requests.
Rejects all non-POST requests.
- Definition Classes
- MethodDirectives
- def postHttpBinding(binding: ServerBinding): Unit
Hook that will be called just after the Http server binding is done.
Hook that will be called just after the Http server binding is done. Override this method if you want to perform some actions after the server is up.
- Attributes
- protected
- def postHttpBindingFailure(cause: Throwable): Unit
Hook that will be called in case the Http server binding fails.
Hook that will be called in case the Http server binding fails. Override this method if you want to perform some actions after the server binding failed.
- Attributes
- protected
- def postServerShutdown(attempt: Try[Done], system: ActorSystem): Unit
Hook that will be called just after the server termination.
Hook that will be called just after the server termination. Override this method if you want to perform some cleanup actions after the server is stopped. The
attempt
parameter is represented with a Try type that is successful only if the server was successfully shut down.- Attributes
- protected
- def provide[T](value: T): Directive1[T]
Injects the given value into a directive.
Injects the given value into a directive.
- Definition Classes
- BasicDirectives
- def put: Directive0
Rejects all non-PUT requests.
Rejects all non-PUT requests.
- Definition Classes
- MethodDirectives
- 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
- 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
- def recoverRejections(f: (Seq[Rejection]) => RouteResult): Directive0
- Definition Classes
- BasicDirectives
- def recoverRejectionsWith(f: (Seq[Rejection]) => Future[RouteResult]): Directive0
- Definition Classes
- BasicDirectives
- 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
- 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
tohttp://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
- 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
- def reject(rejections: Rejection*): StandardRoute
Rejects the request with the given rejections.
Rejects the request with the given rejections.
- Definition Classes
- RouteDirectives
- def reject: StandardRoute
Rejects the request with an empty set of rejections.
Rejects the request with an empty set of rejections.
- Definition Classes
- RouteDirectives
- 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
- 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
- def requestEntityEmpty: Directive0
Rejects if the request entity is non-empty.
Rejects if the request entity is non-empty.
- Definition Classes
- MiscDirectives
- 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
- 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
ordns
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 TlsClientIdentityRejectionRequire the client to be authenticated, if not reject the request with a TlsClientUnverifiedRejection, also require the one of the client certificate
ip
ordns
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 TlsClientIdentityRejectionUsing 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)
orsetNeedClientAuth(true)
or else every request will be failed.- Definition Classes
- TlsDirectives
- 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
- def respondWithDefaultHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0
- Definition Classes
- RespondWithDirectives
- 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
- 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
- def respondWithHeaders(firstHeader: HttpHeader, otherHeaders: HttpHeader*): Directive0
- Definition Classes
- RespondWithDirectives
- 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
- 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
- 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
- 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
- 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
- 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
- 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.
- 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.
- 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.
- 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.
- 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
- 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
- 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
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val systemReference: AtomicReference[ActorSystem]
ActorSystem used to start this server.
ActorSystem used to start this server. Stopping this system will interfere with the proper functioning condition of the server.
- Attributes
- protected
- 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
- 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
- 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
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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
- 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
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- def waitForShutdownSignal(system: ActorSystem)(implicit ec: ExecutionContext): Future[Done]
Hook that lets the user specify the future that will signal the shutdown of the server whenever completed.
Hook that lets the user specify the future that will signal the shutdown of the server whenever completed.
- Attributes
- protected
- 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
- 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
- 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
- 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 noContent-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 noContent-Encoding
header is present yet.- Definition Classes
- CodingDirectives
- 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 validRange
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 validRange
request header. The requested byte-ranges may be coalesced. This directive is transparent to non-GET requests Rejects requests with unsatisfiable rangesUnsatisfiableRangeRejection
. 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 theconditional(...)
directive, i.e.conditional(...)
must be on a higher level in your route structure in order to function correctly.- Definition Classes
- RangeDirectives
- See also
- 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
- 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
- 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
- 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
- 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
- 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
- def withoutRequestTimeout: Directive0
- Definition Classes
- TimeoutDirectives
- 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 usingwithSizeLimit
instead, providing it with a value high enough to successfully handle the route in need of big entities.
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- object Slash extends PathMatcher0
A PathMatcher that matches a single slash character ('/').
A PathMatcher that matches a single slash character ('/').
- Definition Classes
- PathMatchers
Deprecated Value Members
- 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
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from HttpApp toStringFormat[HttpApp] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- 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 ofheaderValueByName('Referer)
useheaderValueByType(Referer)
- 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 ofoptionalHeaderValueByName('Referer)
useoptionalHeaderValueByType(Referer)
- def →[B](y: B): (HttpApp, B)
- Implicit
- This member is added by an implicit conversion from HttpApp toArrowAssoc[HttpApp] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.