我正在调用名为#renderwithfallback的Velocity宏,我无法访问源代码。但是,此宏调用的结果输出包含前导空格,我在删除它时遇到问题。
对宏的调用看起来像这样(请注意,这之前是一个名为$ link.requestBaseURL的变量):
$link.requestBaseURL#renderwithfallback({'content': $image, 'params':{'renderMode': 'urlBuilderStandard'}})#end
结果输出如下:
http://local.london24.com:8080 /image/policy:1.312:1450097969/Yellow-and-orange-daffodils.jpg?f=default&h=200&w=300&$p$f$h$w=c7ebfa3 < / p>
正如您所看到的,由于8080和正斜杠之间存在空白,URL被破坏。
我已经多次尝试删除这个空格,但没有任何效果。我已经尝试将.trim()和.replace(“”,“”)添加到宏调用的末尾,但这没有任何效果。我也尝试将宏调用分配给Velocity变量,如下所示:
#set($imageLocation = "#renderwithfallback({'content': $image, 'params':{'renderMode': 'urlBuilderStandard'}})#end")
然后在$ imageLocation上调用.trim()方法,但这也不起作用。 #set行直接打印出宏的输出,然后当我尝试打印$ imageLocation甚至$ imageLocation.trim()时,它在网页上显示为空白。
有谁知道如何摆脱空白?
答案 0 :(得分:0)
尝试$stringUtils.deleteWhitespace(your variable)