我正在构建一个需要通过SOAP接口获取一些数据的Android应用。我尝试使用KSOAP2模块(使用ksoap2-android-2.6.0-jar-with-dependencies.jar)。我在获取KSOAP方面遇到了麻烦
我想要这个作为请求:
<v:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://schemas.xmlsoap.org/soap/encoding/" xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
<v:Header /><v:Body>
<j:validateRef1 xmlns:j="http://ws.service.tbank.co.th/" id="o0" c:root="1">
<arg0 i:type="d:string">1234567890</arg0>
</j:validateRef1>
</v:Body></v:Envelope>
但是ksoap2给了我这个:
<v:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://schemas.xmlsoap.org/soap/encoding/" xmlns:v="http://schemas.xmlsoap.org/soap/envelope/">
<v:Header />
<v:Body>
<validateRef1 xmlns="http://ws.service.tbank.co.th/" id="o0" c:root="1">
<arg0 i:type="d:string">1234567890</arg0>
</validateRef1>
</v:Body>
</v:Envelope>
唯一的区别是validateRef1元素在标签标签上没有n0前缀&#34; j&#34;并且命名空间也不包含标记名称&#34; j&#34;。
有人可以帮我把结果作为第一个。
答案 0 :(得分:1)
我找到了解决方案。你需要添加
envelope.dotNet = false;