我想将ESI include或eval块的结果存储在ESI变量中。include的内容超出了我的控制范围。它的格式是JSON。我已经尝试了以下所有方法,但都没有用。该变量以空字符串结束。
<esi:assign name="variable_name">
'<esi:include src="$(url)" method="post" entity="$(param)" />'
</esi:assign>
<esi:assign name="variable_name">
'<esi:eval src="$(url)" method="post" entity="$(param)" />'
</esi:assign>
<esi:assign name="variable_name">
'''<esi:include src="$(url)" method="post" entity="$(param)" />'''
</esi:assign>
<esi:assign name="variable_name">
'''<esi:eval src="$(url)" method="post" entity="$(param)" />'''
</esi:assign>我正在测试的ESI服务器是Akamai的ETS。
发布于 2012-08-16 04:32:09
这是Akamai的支持团队提供的解决方案。相当复杂,但它工作得很好。
文件: json.txt
{ "a" : 1, "b" : 2 }文件: frag.esi
<esi:text><esi:assign name="val">'''</esi:text><esi:include
src="json.txt"/><esi:text>'''</esi:assign></esi:text>文件: container.esi
<esi:eval src="frag.esi" dca="esi" />
<esi:vars>
val = $(val)
</esi:vars>https://stackoverflow.com/questions/11870566
复制相似问题