2

我想使用通过以下方式获取资产时自动添加到资产 URL 的 CDN URL:

@routes.Assets.versioned("js/whatever.js")

有一篇很棒的文章介绍了如何为 Play 2.3 设置 CDN URL,但我在 Play 2.4 中找不到任何示例。有人已经弄清楚了吗?

谢谢!

4

1 回答 1

1

这实际上取决于您的 Web 基础架构需要什么缓存策略。

说到 2.3 到 2.4 的过渡,您只需要更改一件事:

  • 使用controller而不是object

有关原因,请参阅迁移指南

更一般地说,Play 框架内置了出色的缓存支持。我会使用versioned而不是at内置Assets控制器来通过使用Etag来包含版本控制支持。值得检查您的 CDN 是否支持 Etag。

您可以使用此基于 HTTP 标头的 Etag 技术和博客文章中基于文件名的技术中的一种或两种。这取决于您的网络基础设施。一个可能比另一个更好。

(该博客中的 PS 代码无法编译,自定义at需要三个参数,而对其的调用只有两个参数。)

于 2015-07-06T21:32:20.823 回答