respondWithHeader
Signature¶
def respondWithHeader(responseHeader: HttpHeader): Directive0
Description¶
Adds a given HTTP header to all responses coming back from its inner route.
This directive transforms HttpResponse
and ChunkedResponseStart
messages coming back from its inner route by adding the given HttpHeader
instance to the headers list.
See also respondWithHeaders if you’d like to add more than one header.
Example¶
sourceval route =
path("foo") {
respondWithHeader(RawHeader("Funky-Muppet", "gonzo")) {
complete("beep")
}
}
// tests:
Get("/foo") ~> route ~> check {
header("Funky-Muppet") shouldEqual Some(RawHeader("Funky-Muppet", "gonzo"))
responseAs[String] shouldEqual "beep"
}
sourceimport static org.apache.pekko.http.javadsl.server.Directives.complete;
import static org.apache.pekko.http.javadsl.server.Directives.path;
import static org.apache.pekko.http.javadsl.server.Directives.respondWithDefaultHeader;
final Route route =
path(
"foo",
() ->
respondWithHeader(
RawHeader.create("Funky-Muppet", "gonzo"), () -> complete("beep")));
testRoute(route)
.run(HttpRequest.GET("/foo"))
.assertHeaderExists("Funky-Muppet", "gonzo")
.assertEntity("beep");
1.0.1