使用 WSDL 导入程序调用 Web 服务时遇到问题



我构建了一个调用Web服务的应用程序,以便检索一些信息。此应用程序旨在同时在Android和Windows上运行(使用firemonkey框架(。 调用 Web 服务的对象是使用 WSDL 导入程序构建的,在 Windows 上运行应用程序时效果很好。

尽管如此,当我尝试在安卓设备上使用我的应用程序时,我只能调用网络服务两次。第三次,应用程序冻结。

我尝试进行一些调试,但似乎应用程序在尝试调用Web服务时冻结:

genEtq := GetIGenerationEtiquettes(); // Converts a THttpRio as a IGenerationEtiquette object
soapattachmnt := genEtq.GetImageEtiquette(idEtiquette); // Calls web service -> freeze on third time
//
// Do something ...
//

网络服务托管在我的计算机上,因此我确定服务方面没有麻烦。此外,当我重新启动应用程序时,我仍然可以调用 Web 服务两次。

我的应用程序有权在我的安卓设备上访问互联网,所以我对问题是什么一无所知。 此外,我尝试监视网络(通过wireshark(,并且我已经能够看到前两个请求,但看不到第三个请求。

您对如何找到问题有任何想法吗?

最后我找到了答案,我的错误是每次调用 GetIGenerationEtiquettes(( 函数而不是存储结果对象。

现在,我可以根据需要随时调用我的 Web 服务。

希望这个答案能帮助某人。

相关内容

最新更新