2012-03-14 70 views
2

我在使用playframework v2,并且每天都有一个外部进程重新创建我的站点地图文件。他们都在资产文件夹/站点地图Playframework 2.x - 防止资产缓存

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

回答

2

你应该得到的文件(从磁盘或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

或者你也可以达到同样的行为与工作。

+0

我会试试看看它是否有效。由于 – zcourts 2012-03-15 22:16:57

1

把它放在/公用文件夹..资源从那里没有截获/任何控制器处理等

所以,如果你把你的文件到该文件夹​​/public/sitemaps/sitemap.xml它会以yoursite.com/public/sitemaps/sitemap.xml的形式提供。

+0

对不起,我可能误导你。这些文件已经在公用文件夹中。但是该公共文件夹可通过site.com/assets/*访问。如果play没有处理它们,那么因为它们被缓存了,所以有些失误。如果我停止进程并重新启动,则会给出该文件的新版本 – zcourts 2012-03-15 22:16:01