Как установить заголовок во всех ответах в Play! рамки 2,7 (Java) - PullRequest
0 голосов
/ 11 апреля 2020

В старых играх! версии (например, 2.3) можно было изменить заголовок всех ответов, как

public class WithMyPHeaderAction extends Action<WithMyPHeader> {

    @Override
    public CompletionStage<Result> call(Context ctx) {
        ctx.response().setHeader("any", "value");
        return delegate.call(ctx);
    }
}

Как мне сделать это с Play! 2.7 без амортизации (ctx.response () устарела с версии 2.7), в Java?

1 Ответ

0 голосов
/ 12 апреля 2020

Вам не нужно действие, чтобы сделать это. В контроллере вы можете просто:

return ok().withHeader("any", "value");

Если вы должны сделать это в действии, то же самое:

@Override
public CompletionStage<Result> call(Http.Request req) {
    return delegate.call(req).thenApply(r -> r.withHeader("any", "value"));
}

Я использую play.mvc.Action.Simple для действия. Также я протестировал это в Play 2.8.1, должно работать и в Play 2.7.

...