我需要在 ksoap2(Android 版本)生成的信封中添加一个属性(xmlns:n0="urn:checkOTP")。
<v:Envelope
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://www.w3.org/2003/05/soap-encoding"
xmlns:v="http://www.w3.org/2003/05/soap-envelope">
<v:Header>
...
</v:Envelope>
转向
<v:Envelope
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:d="http://www.w3.org/2001/XMLSchema"
xmlns:c="http://www.w3.org/2003/05/soap-encoding"
xmlns:v="http://www.w3.org/2003/05/soap-envelope"
xmlns:n0="urn:checkOTP">
<v:Header>
...
</v:Envelope>
错误代码是:
W/System.err(858): Code: SOAP-ENV:Sender, Reason: Method 'checkOtp' not implemented: method name or namespace not recognized
该服务器是 gSOAP2 的,如果在标头中添加“xmlns:n0="urn:checkOTP"(使用 javascript 测试),则可以完美运行。
此致。