Как настроить заголовок ответа ETag в standalone.xml на сервере wildfly 12? - PullRequest
0 голосов
/ 17 сентября 2018

Я хочу добавить атрибут etag в каждом ответе.Я добавил заголовок var и заголовок управления кэшем (с max-age = 600, public) к ответам, но я не нашел никакого решения, чтобы добавить etag в ответ.Может кто-нибудь помочь мне, пожалуйста?

1 Ответ

0 голосов
/ 17 сентября 2018

Заголовок ETag - это просто дополнительный заголовок, подобный заголовку контроля кэша, который вы уже добавили. Взгляните на следующий пример кода для генерации заголовка ETag в ресурсе JAX-RS:

@GET
@Path("/yourResource/{id}")
public Response getPerson(@PathParam("id") String name, @Context Request request){
    CacheControl cc = new CacheControl();
    cc.setMaxAge(86400);

    Response.ResponseBuilder rb = null;

    EntityTag etag = new EntityTag(someService.getById(id).hashCode()+"");

    responseBuilder = req.evaluatePreconditions(etag);

    if (responseBuilder != null) {
       return responseBuilder.cacheControl(cc).tag(etag).build();
    }

    responseBuilder = Response.ok(UserDatabase.getUserById(id)).cacheControl(cc).tag(etag);
    return responseBuilder .build();
}
...