gpt4 book ai didi

java - 如何在 ResourceStreamRequestHandler#configure(..) 中设置Header(迁移问题)

转载 作者:行者123 更新时间:2023-12-01 11:26:48 27 4
gpt4 key购买 nike

我正在将 wicket 1.4 迁移到 6 到 1.5。我遇到了无法解决的问题。在 wicket 1.4 中我曾经有过(注意:是的,我确实有detach)

public class TempFileResourceRequestTarget extends ResourceStreamRequestTarget implements Serializable {
@Override
protected void configure(final RequestCycle requestCycle, final Response response,
final IResourceStream resourceStream) {
super.configure(requestCycle, response, resourceStream);
((WebResponse)response).getHttpServletResponse().setHeader("Cache-Control","");
((WebResponse)response).getHttpServletResponse().setHeader("Pragma","");
}

在 wicket 1.5/6 中我将其更改为:

public class TempFileResourceRequestTarget extends ResourceStreamRequestHandler implements Serializable {
@Override
protected void configure(ResourceStreamResource resource) {
super.configure(resource);
((HttpServletResponse)resource).setHeader("Cache-Control","");
((HttpServletResponse)resource).setHeader("Pragma","");
}
}

我非常绝望,试图找到任何包含 setHeader() 的东西 - 我相信我在迁移指南或类似的东西中找到了它。无论如何,这是行不通的。我该如何设置?在渲染头中?没有线索。提前致谢。

最佳答案

ResourceStreamResource 未实现 HttpServletResponse。您可以使用 ResourceStreamResource#setCacheDuration(Duration.NONE) 禁用缓存。

它将为您执行以下操作:

 public void disableCaching() {
this.setDateHeader("Date", Time.now());
this.setDateHeader("Expires", Time.START_OF_UNIX_TIME);
this.setHeader("Pragma", "no-cache");
this.setHeader("Cache-Control", "no-cache, no-store");
}

这就是你所追求的吗?

关于java - 如何在 ResourceStreamRequestHandler#configure(..) 中设置Header(迁移问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30757237/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com