Playframework 2.x - 阻止资产缓存

时间:2012-03-14 21:58:50

标签: java scala caching cache-control playframework-2.0

我正在使用playframework v2,我每天都会通过外部进程重新创建一次我的站点地图文件。它们都在资产文件夹/站点地图

如何强制playframework直接从磁盘返回文件?

2 个答案:

答案 0 :(得分:2)

您应该获取文件(来自磁盘或WS)并在经典Action中呈现内容,然后使用注释设置缓存:

@Cached(key="sitemap", duration=86400)
public static Result index() {
  // ... set sitemap variable from your file
  return ok(siteMap);
}

http://www.playframework.org/documentation/2.0/JavaCache

或者你可以通过工作实现相同的行为。

答案 1 :(得分:1)

将它放在/ public文件夹中。来自那里的资源不会被任何控制器拦截/处理等。

因此,如果您将文件放入文件夹/public/sitemaps/sitemap.xml,它将以yoursite.com/public/sitemaps/sitemap.xml的形式提供