Rails为指纹静态资产提供了一个非常简单的解决方案。 Play Framework有什么类似的东西吗?似乎无法在Google上找到任何内容。
感谢。
http://guides.rubyonrails.org/asset_pipeline.html
更新:我的公司最终在内部实施了一个。
答案 0 :(得分:3)
你可能想看一下新的require.js支持[1],可以在play 2.1 master上找到
[1] https://github.com/playframework/Play20/commit/e3c2ffb0d4779863374c44c5ec1a588a1eca4474
答案 1 :(得分:3)
Play 2.3(目前在RC1上)引入了类似Rails的资产管道,支持asset fingerprinting。
答案 2 :(得分:1)
Play framework 2内置了对CofeeScript,LESS和Closure的支持,但是在运行时编译时,它们都不被视为“静态”资源。 / p>
还没有等效的fingerprint
,所以你需要自己编写(可能很短)的动作。
答案 3 :(得分:1)
我不确定如何通过一个非常短的动作来做到这一点,正如一个答案所提到的那样。
但你可以创建一个像James Ward这样的包裹的Assets控制器: https://github.com/jamesward/play2-cloudfront
这只会处理用CDN信息装饰链接。然后,您可以获得链接的MD5并将其附加到文件名。所以,如果你有foo.js,那将是foo-fp-XXXXXXXXXXXXXX.js“。
我认为你必须更改路由文件,以便在CDN寻找时将该资产路由到正确的文件。所以该路线必须剥离“-fp-XXXXXXXXXXXXXX”中的所有内容并获取文件名和扩展名。
编辑: 这是git repo,我有一个例子,说明我们如何在公司进行资产指纹识别。 https://github.com/Egraphs/play-assets-improvements