首页 > 解决方案 > 如何将 XML 添加为另一个 XML 中的内部文本,作为 SOAP 请求的参数

问题描述

例如,我想在 XML SOAP 中将 XML 作为参数发送:

   <soapenv:Header/>
   <soapenv:Body>
      <doc:makeSomething>
         <param1>blah blah</param1>
         <pamar2>3.14159</param2>
         <xml>
                 <!-- this is what i want to insert -->
                 <myDOC>
                     <tag1>xxx</tag1>
                     <tag2>yyy</tag2>
                     .....
                     .....
                 </myDOC>                 
         </xml>
      </doc:makeSomething>
   </soapenv:Body>
</soapenv:Envelope>

我能做些什么?使用 urlencode?

标签: xmlsoapencodeurlencode

解决方案


解决方案是在 ]]> 之间包含 data-xml

<soapenv:Header/>
   <soapenv:Body>
      <doc:makeSomething>
         <param1>blah blah</param1>
         <pamar2>3.14159</param2>
         <xml>
                 <![CDATA[
                 <?xml version="1.0" encoding="ISO-8859-1"?>
                 <myDOC>
                     <tag1>xxx</tag1>
                     <tag2>yyy</tag2>
                     .....
                     .....
                 </myDOC>                 
                 ]]>
         </xml>
      </doc:makeSomething>
   </soapenv:Body>
</soapenv:Envelope>

推荐阅读