【问题标题】:Change SOAP body for python suds call更改 python suds 调用的 SOAP 主体
【发布时间】:2018-07-17 18:47:25
【问题描述】:

我们有一个项目正在使用 suds 进行一些 SOAP 调用,直到今天我发现 suds 没有从导入的 wsdl 中解析出“选择”对象时,它一直运行良好。有了这些信息,我一直在尝试找出一种方法来注入使调用成功所需的 xml

我这样称呼 suds 客户

self.client.service.retrieveService()

suds 正在调用这种风格

    <SOAP-ENV:Envelope
      <SOAP-ENV:Header>
        <tns:wsHeader>
          <wss>
            <userName>xxx</userName>
            <password>xxx</password>
          </wss>
          <messageType/>
       </tns:wsHeader>
     </SOAP-ENV:Header>
     <ns1:Body>
       <ns0:retrieveServiceRequest/>
     </ns1:Body>
   </SOAP-ENV:Envelope>

我已经使用 suds 工厂和 wsdl 来创建正确的输入,但我不知道如何将这样的内容传递给客户端以用于正文:

   (retrieveServiceRequest){
     serialNumberWrapper =
      (serialNumberWrapper){
         serialNumber = "1234567890"
      }
   }

注意:我也尝试过创建自己的 xml 并使用 __inject,但 suds 似乎没有做任何事情或提供任何反馈(self.client.last_sent() 返回 None)。我可以提供从 wsdl 中正确提取的唯一参数,用于 retrieveService 给客户端调用,它将被添加到 suds 调用中。

在这一点上的任何建议将不胜感激,谢谢!

【问题讨论】:

    标签: python soap suds choice


    【解决方案1】:

    所以我继续在这方面工作,因为它阻止了一些错误修复。将 suds 替换为 suds_jurko,这只是一个仍在维护的分支。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-20
      • 2011-02-12
      • 1970-01-01
      • 2013-11-03
      • 1970-01-01
      相关资源
      最近更新 更多