使用 pysimplesoap 访问嵌套的 Soap 元素



Soap 函数具有以下请求结构:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="urn:microsoft-dynamics-schemas/page/serial_number_information">
<soapenv:Header/>
<soapenv:Body>
  <ser:Update>
     <ser:Serial_Number_Information>
        <ser:Key></ser:Key>
        <!--Optional:-->
        <ser:Item_No></ser:Item_No>
        <ser:Serial_No></ser:Serial_No>
        <ser:Tip></ser:Tip>
     </ser:Serial_Number_Information>
  </ser:Update>

我正在尝试向上面的函数发送一个 pysimplesoap 请求,但我似乎无法Serial_Number_Information

client.Update(Key=r_key,Serial_No=r_srl,Item_No=n_item,Tip=n_tip)

我决定放弃 pysimplesoap 并朝着 urllib2 的方向发展。 针对后端使用 NTLM+AD 的 API 的 pysimplesoap 遇到了不一致的身份验证问题。 另外,我可以构造我的 SOAP 调用以显式匹配公开函数的结构。 是的,工作量要多一点,但它始终如一地工作。