You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在WSO2中如何将XML转换为字符串且不转义尖括号

在WSO2中将XML转换为无转义尖括号的字符串

下面给你几种在WSO2里实现的实用方式:

方法1:用Script Mediator(Groovy脚本)

直接通过Groovy脚本获取XML的原始字符串表示,不会转义尖括号:

def xmlPayload = mc.getPayloadXML();
def xmlString = xmlPayload.toString();
mc.setProperty("XML_STRING", xmlString);

执行后,XML的原始字符串会被存在XML_STRING属性里,后续流程可以直接调用这个属性。

方法2:用XSLT Mediator

编写一个简单的XSLT样式表,把XML序列化为无转义的字符串:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="text"/>
    <xsl:template match="/">
        <xsl:copy-of select="."/>
    </xsl:template>
</xsl:stylesheet>

在WSO2的序列中引用这个XSLT mediator,它会直接输出原始XML的字符串形式,尖括号不会被转义。

方法3:用PayloadFactory Mediator(配合禁用输出转义)

如果需要将XML字符串作为输出或者某个元素内容,可借助disable-output-escaping来实现:

<payloadFactory media-type="xml">
    <format>
        <xsl:text disable-output-escaping="yes"><![CDATA[$1]]></xsl:text>
    </format>
    <args>
        <arg evaluator="xml" expression="$body/*"/>
    </args>
</payloadFactory>

这个配置会直接保留XML的原始尖括号,不会进行转义处理。

内容的提问来源于stack exchange,提问作者Ayub Jamal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 04:01:14