TsgcWebSocketHTTPServer › Gebeurtenissen › OnCommandGet
Wordt geactiveerd wanneer de HTTP-server een GET-, POST- of HEAD-verzoek ontvangt zodat de applicatie de respons kan opbouwen.
__property TIdHTTPCommandEvent OnCommandGet;
// typedef void __fastcall (__closure *TIdHTTPCommandEvent)(TIdContext * AContext, TIdHTTPRequestInfo * ARequestInfo, TIdHTTPResponseInfo * AResponseInfo);
—
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.
void OnCommandGet(TIdContext *AContext, TIdHTTPRequestInfo *ARequestInfo,
TIdHTTPResponseInfo *AResponseInfo)
{
if (ARequestInfo->Document == "/")
{
AResponseInfo->ContentText = "<html><head><title>Test Page</title></head><body></body></html>";
AResponseInfo->ContentType = "text/html";
AResponseInfo->ResponseNo = 200;
}
}