我正在处理一个调用外部Web服务来获取数据的系统,当Web服务出现故障时,调用者就会挂起,模板永远不会结束。
在调用模板中有一个CFSETTING REQUESTTIMEOUT,但它似乎没有应用于Web服务调用。调用代码使用CFSETTING T,我对语法不太舒服。有人能告诉我如何将超时应用于以下代码吗?
ws = CreateObject("webservice", "http://#trim(arguments.RemoteSite)#",{wsversion="2"});
ret = ws.GetJData("#arguments.clubid#", #datepart('yyyy',arguments.StartDate)#, #datepart('m',arguments.StartDate)#);
1条答案
按热度按时间1yjd4xko1#
文档指出,当创建WSDL对象时,您可以在argStruct中设置超时。默认情况下为0(无超时);如果您设置超时,则还需要异常处理,因为Web服务调用将抛出超时异常。
我在CF Fiddle上测试了这个模式,如果你想自己试试的话。