HTTP istemci isteklerini ele almak için OnCommandGet kullanın. Aşağıdaki parametreleri kullanın:
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;
HTTP yanıtını özelleştirmek için bu olayı kullanın. Örneğin, bazı uç noktaların bir yetkilendirme şeması kullanmasını, diğerlerine ise yetkilendirme olmadan erişilebilmesini istiyorsanız, ona izin vermek veya devre dışı bırakmak için options parametresini kullanın. Aşağıda, Authorization Basic'in etkinleştirildiği, ancak bir kullanıcı /public uç noktasını istediğinde yetkilendirmenin gerekli olmadığı bir örnek verilmiştir.
procedure OnBeforeCommand(const aConnection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo; var aOptions: TsgcHTTPCommandOptions);
begin
if aRequestInfo.Document = '/public' then
aOptions := [hcoAuthorizedBasic];
end;