在播放结果上设置 HTTP 标头(如过期) - 以及如何处理 ETag?

Posted

技术标签:

【中文标题】在播放结果上设置 HTTP 标头(如过期) - 以及如何处理 ETag?【英文标题】:Setting HTTP header (like expire) on Play Result - and how to handle ETag? 【发布时间】:2012-05-12 15:10:54 【问题描述】:

如何在 play 2.0 的结果对象中设置 Http 标头?

我想设置缓存控制(过期)ala 这个: 缓存控制 公开,最大年龄=2592000

检查 ET 标签并返回正确响应的最佳方法是什么?

一直在看这里,但没有看到任何东西: http://www.playframework.org/documentation/2.0.1/JavaActions

提前谢谢 托马斯·维维克

【问题讨论】:

【参考方案1】:

您需要查看 JavaResponse 部分...

http://www.playframework.org/documentation/2.0.1/JavaResponse

文档中设置缓存控制的示例是

public static Result index() 
  response().setContentType("text/html");
  response().setHeader(CACHE_CONTROL, "max-age=3600");
  response().setHeader(ETAG, "xxx");
  return ok("<h1>Hello World!</h1>");

【讨论】:

还找到了一个很好的链接到服务器静态资产github.com/playframework/Play20/wiki/Assets

以上是关于在播放结果上设置 HTTP 标头(如过期) - 以及如何处理 ETag?的主要内容,如果未能解决你的问题,请参考以下文章