TsgcWebSocketHTTPServer › Gebeurtenissen › OnCommandGet
Wordt geactiveerd wanneer de HTTP-server een GET-, POST- of HEAD-verzoek ontvangt zodat de applicatie de respons kan opbouwen.
property OnCommandGet: TIdHTTPCommandEvent;
// TIdHTTPCommandEvent = procedure(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo) of object
—
OnCommandGet is het belangrijkste toegangspunt voor HTTP-verkeer (GET, POST en HEAD) aangeboden door de component. ARequestInfo stelt het verzoek bloot (Document, Params, AuthUsername, Headers, PostStream, RemoteIP...) en AResponseInfo is het uitgaande antwoord: stel ContentText of ContentStream in met de inhoud, ContentType met het MIME-type en ResponseNo met de HTTP-statuscode (200, 404...); roep AResponseInfo.ServeFile aan om een bestand van schijf te serveren. Handlers worden uitgevoerd in de context van de verbindingsthread, dus vermijd directe UI-toegang of schakel over naar een gesynchroniseerde verzending. Verzoeken voor bestanden die al in DocumentRoot staan, worden automatisch geserveerd en activeren deze gebeurtenis niet.
procedure OnCommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo;
AResponseInfo: TIdHTTPResponseInfo);
begin
if ARequestInfo.Document = '/' then
begin
AResponseInfo.ContentText := '<html><head><title>Test Page</title></head><body></body></html>';
AResponseInfo.ContentType := 'text/html';
AResponseInfo.ResponseNo := 200;
end;
end;