0

在我的应用程序中使用 node-soap 时,我得到这样的 xml:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:impl="http://magfa.com/soap/SOAPSmsQueue" 
  xmlns:intf="http://magfa.com/soap/SOAPSmsQueue" 
  xmlns:tns1="urn:SOAPSmsQueue">
  <soap:Header></soap:Header>
  <soap:Body>
    <impl:enqueue>
      <domain>magfa</domain>
      <messageBodies>
        <messageBodies>hi</messageBodies>
      </messageBodies>
      <recipientNumbers>
        <recipientNumbers>989187004197</recipientNumbers>
      </recipientNumbers>
      <senderNumbers>
        <senderNumbers>98300079368</senderNumbers>
      </senderNumbers>
    </impl:enqueue>
  </soap:Body>
</soap:Envelope>

所以我想为数组元素添加一些属性。像这样的一些属性:soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"

并像这样创建数组元素:

  <messageBodies soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" 
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
    <messageBodies>hi</messageBodies>
  </messageBodies>

最后我希望我的 xml 看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:impl="http://magfa.com/soap/SOAPSmsQueue" 
  xmlns:intf="http://magfa.com/soap/SOAPSmsQueue" 
  xmlns:tns1="urn:SOAPSmsQueue">
  <soap:Header></soap:Header>
  <soap:Body>
    <impl:enqueue>
      <domain>magfa</domain>
      <messageBodies soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" 
        xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
        <messageBodies>hi</messageBodies>
      </messageBodies>
      <recipientNumbers soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" 
        xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
        <recipientNumbers>989381028800</recipientNumbers>
      </recipientNumbers>
      <senderNumbers soapenc:arrayType="soapenc:string[1]" xsi:type="soapenc:Array" 
        xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
        <senderNumbers >98300079368</senderNumbers>
      </senderNumbers>
    </impl:enqueue>
  </soap:Body>
</soap:Envelope>

这个描述只是为了在stackoverflow中对这个问题进行愚蠢的验证is looks like your post is mostly code ...

4

1 回答 1

1

尝试这个:

  <messageBodies soap-enc:arrayType="xsd:string[1]" xsi:type="soap-enc:Array" 
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" >
    <messageBodies>hi</messageBodies>
  </messageBodies>

肥皂编码而不是肥皂编码

于 2018-02-06T10:55:23.153 回答