【问题标题】:Grails Resources Plugin -- How to get generated urls?Grails 资源插件——如何获取生成的 url?
【发布时间】:2012-07-11 15:49:14
【问题描述】:

有谁知道我如何访问资源插件会吐出的确切网址?

我想使用资源插件来优化我的 javascript 文件的传输,但是,我正在编写的应用程序是一个使用缓存清单的 html5 离线应用程序。根据缓存清单的规则,缓存清单文件必须引用与在 html 页面中显示的文件完全相同的文件。

资源插件在聚合文件中添加了一堆查询字符串信息和校验和。为了使资源插件优化缓存清单起作用,我需要在我的缓存清单文件中吐出资源插件的确切 url。

以下是我所说的一些示例:

资源插件将在我的 html 输出中输出以下内容:

<script src="/awesome-app/static/36wl8Nwm8L7ZZMSbV6NVQPfi6xCx6DcVV0wFDCYRyv5.js" type="text/javascript" ></script>

如果我可以获取上述网址的36wl8Nwm8L7ZZMSbV6NVQPfi6xCx6DcVV0wFDCYRyv5.js 部分,我可以将它包含在我的缓存清单文件中,如下所示:

CACHE MANIFEST

# rev 192

NETWORK:
*

CACHE:
static/36wl8Nwm8L7ZZMSbV6NVQPfi6xCx6DcVV0wFDCYRyv5.js  //<-- this would be the aggregated file!

感谢您的帮助!

【问题讨论】:

    标签: grails resources cache-manifest


    【解决方案1】:

    我认为重命名是缓存资源插件的一部分,而不是基础资源插件。如果我们谈论的是同一件事,他们使用每个文件字节内容的 SHA256 哈希来生成哈希。查看 github 上的 HashAndCacheResourceMapperBASE62 类,您将了解它们如何生成文件名。或者,如果您不依赖插件中的缓存机制,您可以禁用它并一起避免该问题。

    【讨论】:

    • 没错,普罗克斯。删除缓存插件后,我就可以使用缓存清单进行捆绑和缩小。谢谢你帮助我看到光明。 ;-)
    猜你喜欢
    • 1970-01-01
    • 2014-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-16
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    相关资源
    最近更新 更多