我的网络服务使用soapsession作为会话机制。我想使用ksoap2 api调用该Web服务。如何调用该Web服务以便维护会话?雅,还有一个问题。现在,Web服务没有将ServiceGroupId返回到用ksoap2 api编写的客户端,而不像我在使用axis2 api(ServiceClient)编写客户端时发送的那样。这是因为在ksoap2客户端中,我没有使用寻址模块。所以,我的问题是我可以使用ksoap2来使用寻址模块吗?
答案 0 :(得分:1)
您可以使用KeepAliveHttpsTransportSE,但是您只能使用此连接。 否则,您需要从您的auth呼叫中获取sessionID。
使用HttpsTransportSE传输进行auth调用后,请使用:
List<HeaderProperty> hp = (List<HeaderProperty>)transport.getConnection().getResponseProperties();
for (int i = 0; i < hp.size(); i++) {
if (hp.get(i).getKey().equals("set-cookie")){
SESSION_ID = hp.get(i).getValue();
break;
}
}
在进行新的WebService调用时将sessionID设置为标头。