3

Railsは、静的アセットのフィンガープリントを作成するための非常にシンプルなソリューションを提供します。Play Frameworkで利用できる同様のものはありますか?Googleで何も見つからないようです。

ありがとう。

http://guides.rubyonrails.org/asset_pipeline.html

更新:私の会社は最終的に社内で実装しました。

4

4 に答える 4

3

Play2.1マスターで利用できる新しいrequire.jsサポート[1]をご覧ください。

[1] https://github.com/playframework/Play20/commit/e3c2ffb0d4779863374c44c5ec1a588a1eca4474

于 2012-09-20T00:57:23.213 に答える
3

Play 2.3 (現在 RC1 上) では、Rails に似たアセット パイプラインが導入され、アセット フィンガープリンティングがサポートされています。

于 2014-05-20T01:20:43.013 に答える
1

I'm not sure how you could do this through a quite short action as one answer mentions.

But you could create a wrapped Assets controller like James Ward does here: https://github.com/jamesward/play2-cloudfront

That will just handle decorating the links with CDN information. You could then get an MD5 of the link and append that to the file name. So if you had foo.js it will be come foo-fp-XXXXXXXXXXXXXX.js".

I think you would then have to change the routes file to route that asset to the right file when the CDN comes looking for it. So the route would have to strip everything in "-fp-XXXXXXXXXXXXXX" and get the filename and extension.

EDIT: Here is git repo where I have an example of how we do asset fingerprinting at my company. https://github.com/Egraphs/play-assets-improvements

于 2012-11-02T19:06:59.150 に答える
1

Play フレームワーク 2 には、CofeeScriptLESS、およびClosureのサポートが組み込まれていますが、これらは実行時にコンパイルされるため、「静的」リソースとは見なされません。

に相当するものはfingerprintまだないため、(おそらくかなり短い) アクションを自分で作成する必要があります。

于 2012-09-19T22:40:14.733 に答える