ResourceUrlEncodingFilter

ResourceUrlEncodingFilter

Spring boot docs建议速度模板支持ResourceUrlEncodingFilter,以使用版本控制重写静态资产url。从文档引用:


  借助ResourceUrlEncodingFilter(针对Thymeleaf,Velocity和FreeMarker自动配置的ResourceUrlEncodingFilter),可以在运行时在模板中重写资源链接。


我从this blog中发现了百里香用于URL重写的语法。但是在花了几个小时的Google搜索之后,我无法找到Velocity模板语言的语法或宏。谁能指出我的资源来解释这一点。

最佳答案

这是一个错误,请参见SPR-14027
同时,您可以定义自己的宏,如下所示:

#macro( springResourceUrl $relativeUrl )$springMacroRequestContext.getContextUrl(${relativeUrl})#end


并这样称呼它:

<script src="#springResourceUrl("/script.js")"></script>


请注意,从Spring 4.3(参见SPR-13235)开始不赞成使用Velocity支持,并且应该在Spring 5.0(参见SPR-13795)中删除它。

07-28 13:21