【发布时间】:2012-03-31 10:35:20
【问题描述】:
我正在使用 playframework v2,并且我的站点地图文件每天由外部进程重新创建一次。它们都在资产文件夹/站点地图中
如何强制 playframework 直接从磁盘返回文件?
【问题讨论】:
标签: java scala caching cache-control playframework-2.0
我正在使用 playframework v2,并且我的站点地图文件每天由外部进程重新创建一次。它们都在资产文件夹/站点地图中
如何强制 playframework 直接从磁盘返回文件?
【问题讨论】:
标签: java scala caching cache-control playframework-2.0
您应该获取文件(从磁盘或 WS)并在经典动作中呈现内容,然后使用注释设置缓存:
@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
或者您可以通过作业实现相同的行为。
【讨论】:
将它放在 /public 文件夹中.. 来自那里的资源不会被任何控制器等拦截/处理。
因此,如果您将文件放入文件夹 /public/sitemaps/sitemap.xml,它将以 yoursite.com/public/sitemaps/sitemap.xml 的形式提供
【讨论】: