4
in一个TWebModule
过程/函数如何获取当前请求?Delphi TWebModule(IIS-ISAPI):获取当前请求
我曾尝试:
procedure TWebModule1.DoSomething;
var
aRequest : TWebRequest;
begin
aRequest := Request;
end;
,但它似乎对TWebModule
创作制作的第一个请求。
我知道我可以将请求传递给每个TWebActionItem
后续的程序/函数,但我想避免在每个地方传递请求。有小费吗?
更新
挖掘到的代码后,我发现WebContext,似乎解决方案,例如:
uses Web.WebCntxt;
procedure TWebModule1.DoSomething;
var
aRequest : TWebRequest;
begin
if WebContext <> nil then
aRequest := WebContext.Request;
end;
是正确的方式? WebContext
似乎总是nil
。
我在德尔福柏林更新2.
是的,但我想避免在每个地方通过请求 –
我认为每个请求将在一个单独的线程中处理。所以你应该通过它来避免线程冲突。您也可以将其作为类字段存储。但是,你必须处理多线程。 – Andreas
你可以使它像SOAP或Datasnap webmodules这样的threadvar。 –