SOAP请求的空响应

时间:2013-08-09 07:43:59

标签: delphi soap

我有一个ASMX服务的两个delphi客户端。一个客户端是普通的桌面应用程序,另一个是Outlook加载项。 在我的电脑上,一切正常(SOAP调用ASMX服务)。但是我的一个客户在Outlook加载项中遇到SOAP调用问题,同时桌面应用程序在同一台机器上按预期工作。

Outlook加载项中的SOAP调用问题是错误“XML文档必须具有顶级元素”。此错误的原因是呼叫空响应。看一下日志:

8/7/2013-1:12:29 PM  Response: 
8/7/2013-1:12:29 PM  XML document must have a top level element.

Line: 0

                 XMLDoc.TXMLDocument.LoadData + $2AA
                 XMLDoc.TXMLDocument.SetActive + $A8
                 XMLDoc.TXMLDocument.LoadFromStream + $29
                 Rio.TRIO.Generic + $70F

使用调用

在HttpRio AfterExecute方法中检索响应流
fResponse.LoadFromStream(Response);

问题是:这个错误的原因是什么,同一台机器上的一个客户端如何才能正常工作?我可以做些什么来重现,诊断这种情况?

P.S。我知道嗅探http数据包会很棒,但我无法访问客户的PC来运行http嗅探器。

1 个答案:

答案 0 :(得分:0)

您的日志未显示原始请求的时间戳。如果时差恰好落在30或60秒的边界上,那么这几乎肯定是超时情况。即没有收到任何回复。如果它立即发生,那么你的请求很可能没有出来,并被防火墙阻止。