【发布时间】:2017-03-07 12:14:30
【问题描述】:
我是 SOAP 的新开发人员,所以请指导我如何在 android 中调用 soap api。 这是我找到的方法,但不知道它是如何工作的。我已经下载了this库
public static String connectSOAP(String url, String soapNamespace, String soapAction, String soapMethod, Hashtable<String, String> HT) {
String result = null;
SoapObject request = new SoapObject(soapNamespace, soapMethod);
if (HT != null) {
Enumeration<String> en = HT.keys();
while (en.hasMoreElements()) {
Object k = en.nextElement();
Object v = HT.get(k);
request.addProperty(k.toString(), v);
System.out.println("key = " + k.toString() + "; value = " + v);
}
}
SoapSerializationEnvelope envelope =
new SoapSerializationEnvelope(SoapEnvelope.VER11);
//envelope.bodyOut = request;
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(url);
//envelope.getResponse();
try {
androidHttpTransport.call(soapAction, envelope);
if (envelope.bodyIn instanceof SoapFault) {
result = ((SoapFault) envelope.bodyIn).faultstring;
} else {
SoapObject resultsRequestSOAP = (SoapObject) envelope.bodyIn;
result = resultsRequestSOAP.getProperty(0).toString();
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
这是我想用作 api 调用但不知道如何使用它的方法。 所以请帮助我。
【问题讨论】:
-
Here你会得到一步一步的指导。
-
好的,谢谢@sodhankit。如果我有任何问题,我会回到这一点。