如何让Play在不使用第三方插件的情况下自动将文件的ETag作为注释放在文件顶部附近?
例如,对于HTML资源,请在<!-- ETag: 1234 -->
标记的顶部插入<head>
。
如何使用Play框架的内置公共资产路由/指纹识别支持来解决这个问题也很棒。 :)
相关问题: Custom ETag algorithm for asset fingerprinting&amp; Embed ETag in URL
答案 0 :(得分:0)
在conf/routes
中添加以下内容:
GET /resources/*file controllers.Resources.at(file)
在app/controllers/Resources
控制器中:
package controllers
import play.api.mvc._
object Resources extends Controller {
def at(path: String): Action = {
// calculate ETag
val etag = ETag(path)
// stream file with ETag inserted
Ok(... <!-- ETag: etag --> ...)
}
}