in einer TWebModule
Prozedur/Funktion wie erhalten Sie die aktuelle Anfrage?Delphi TWebModule (IIS-ISAPI): Holen Sie sich die aktuelle Anfrage
Ich habe versucht:
procedure TWebModule1.DoSomething;
var
aRequest : TWebRequest;
begin
aRequest := Request;
end;
aber es scheint, die erste Anfrage auf TWebModule
Schöpfung erzeugt.
Ich weiß, ich bin in der Lage, die Anfrage zu folgenden Prozeduren/Funktionen von jedem TWebActionItem
zu übergeben, aber ich möchte vermeiden, die Anfrage überall zu übergeben. Irgendwelche Tipps?
aktualisieren
Nachdem in den Code zu graben, fand ich WebContext und es scheint, die Lösung, zB .:
uses Web.WebCntxt;
procedure TWebModule1.DoSomething;
var
aRequest : TWebRequest;
begin
if WebContext <> nil then
aRequest := WebContext.Request;
end;
ist es der richtige Weg? WebContext
scheint immer nil
.
Ich bin auf Delphi Berlin Update 2.
ja, aber ich möchte vermeiden, die Anfrage alle wo –
übergeben Ich denke, jede Anfrage wird in einem separaten Thread behandelt werden. Sie sollten es also weitergeben, um Thread-Konflikte zu vermeiden. Sie könnten es auch als Klassenfeld speichern. Aber dann musst du mit Multi-Threads umgehen. – Andreas
Sie könnten es eine Threadvar wie SOAP oder Datasnap Webmodule tun. –