AWS API Gateway集成响应VTL映射模板字符串多余空格问题
AWS API Gateway VTL映射模板多余空格问题解决
问题原因
VTL会保留模板里的换行、缩进等空白字符,你示例中$test.toString().trim()行的前导空格(包括换行后的缩进)会被直接输出,这就是你看到的3个多余空格的来源。
解决方法
方法1:使用#trim指令包裹代码块
#trim会移除块内的多余空白字符,确保输出干净:
#trim() #set ($test = "Foo bar") ##return that $test.toString().trim() #end
方法2:让输出语句无前置空格
直接将输出的变量放在行首,避免缩进带来的空格:
#set ($test = "Foo bar") ##return that $test.trim()
方法3:先赋值再输出
先把处理后的结果赋值给变量,再在无空格的行输出该变量:
#set ($test = "Foo bar") #set ($result = $test.trim()) $result
复杂场景下,建议结合#trim指令和无前置空格的输出方式,彻底消除多余空白。
内容的提问来源于stack exchange,提问作者JukkaT
相关产品推荐
相关产品推荐

