我正在使用PHP SoapServer類,並嘗試將純XML內部的SOAP響應正文。如何在SOAP響應中發送純XML?
案例1:
我WSDL已經
<element name="getDataResponse" type="xsd:string"/>
我編碼響應
return new SoapVar($my_xml,XSD_ANYXML)
PHP SoapClient的說
SOAP-ERROR: Encoding: Violation of encoding rules
情況2:
WSDL
<element name="getDataResponse" type="xsd:string"/>
響應編碼
return new SoapVar($my_xml,XSD_STRING)
響應XML已經所有<編碼爲& LT;和>爲& gt;
情況3:
WDSL
<element name="getDataResponse">
<complexType>
...
</complexType>
</element>
其中的complexType對應XML的結構返回
響應編碼
return new SoapVar($my_xml,XSD_ANYXML)
現在返回類型是一個對象,不是XML stri納克
案例4
相同殼體3除了編碼作爲SOAP_ENC_OBJECT。再次的結果將是對象。
請幫忙!我如何才能獲得純粹的XML文本作爲SOAP響應的主體?
您可以嘗試在實際數據結構上遞歸應用新的SoapVar(),而不是將XML寫入字符串。 – 2013-03-15 10:29:30
是的,但問題是,如果我想將XML寫成字符串**,我該怎麼做。 – tok 2013-03-15 11:13:39