如何设置连接webservice的超时时间

2025-01-03 07:05:10
推荐回答(1个)
回答1:

delphi有人是这样解决的:
//XXX begin 2012-11-16 15:24:41 处理beforepost事件
type
TEventHandlers = class { 建一个虚拟类}
procedure aOnBeforePost(const HTTPReqResp:THTTPReqResp;Data : Pointer);
end;
//XXX end 2012-11-16 15:24:43

//XXX begin 2012-11-16 15:36:06 处理“试图引用不存在的令牌”问题
procedure TEventHandlers.aOnBeforePost(const HTTPReqResp:THTTPReqResp;Data : Pointer);
var
iTimeOut : Integer;
begin
iTimeOut := 3600000;
InternetSetOption(Data,
INTERNET_OPTION_RECEIVE_TIMEOUT,
Pointer(@iTimeOut),
SizeOf(iTimeOut));
end;
//XXX end 2012-11-16 15:36:09
//然后在需要时替换事件,以下是替换代码
RIO := THTTPRIO.Create(nil);
//XXX begin 2012-11-16 15:42:41 替换原来的BeforePost事件
RIO.HTTPWebNode.OnBeforePost := EvHandler.aOnBeforePost;
//XXX end 2012-11-16 15:42:44