PlayFramework 2.x - предотвратить кэширование активов
-
14-12-2019 - |
Вопрос
Я использую PlayFramework v2, и у меня есть файлы Citemap, которые повторно создают один раз в день по внешнему процессу.Они все в папке активов / SiteMap
Как заставить PlayFramework вернуть файл непосредственно с диска?
Решение
Вы должны получить файл (с диска или 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/sitemaps/sitemap.xml, он будет доступен как yousite.com/public/sitemaps/sitemap.xml