extractHost
Extract the hostname part of the Host
request header and expose it as a String
extraction to its inner route.
Signature¶
def extractHost: Directive1[String]
Example¶
sourceval route =
extractHost { hn =>
complete(s"Hostname: $hn")
}
// tests:
Get() ~> Host("company.com", 9090) ~> route ~> check {
status shouldEqual OK
responseAs[String] shouldEqual "Hostname: company.com"
}
sourceimport static org.apache.pekko.http.javadsl.server.Directives.complete;
import static org.apache.pekko.http.javadsl.server.Directives.extractHost;
final Route route = extractHost(hn -> complete("Hostname: " + hn));
testRoute(route)
.run(HttpRequest.GET("/").addHeader(Host.create("company.com", 9090)))
.assertEntity("Hostname: company.com");
1.0.1