TsgcWebSocketHTTPServerGebeurtenissen › OnCommandGet

OnCommandGet Gebeurtenis

Wordt geactiveerd wanneer de HTTP-server een GET-, POST- of HEAD-verzoek ontvangt zodat de applicatie de respons kan opbouwen.

Syntaxis

__property TIdHTTPCommandEvent OnCommandGet;
// typedef void __fastcall (__closure *TIdHTTPCommandEvent)(TIdContext * AContext, TIdHTTPRequestInfo * ARequestInfo, TIdHTTPResponseInfo * AResponseInfo);

Standaardwaarde

Opmerkingen

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.

Voorbeeld


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;
  }
}

Terug naar Events