TsgcWebSocketHTTPServer › Olaylar › OnAfterForwardHTTP
Bir HTTP isteği yönlendirildikten sonra tetiklenir, böylece uygulama sonucu veya yukarı akış sunucusu tarafından döndürülen bir hatayı inceleyebilir.
property OnAfterForwardHTTP: TsgcWSOnAfterForwardHTTP;
// TsgcWSOnAfterForwardHTTP = procedure(Connection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo; E: Exception) of object
—
OnAfterForwardHTTP, OnBeforeForwardHTTP iletmeyi etkinleştirdikten ve yukarı akış HTTP isteği tamamlandıktan sonra tetiklenir. ARequestInfo orijinal istemci isteğidir, AResponseInfo yukarı akış sunucusundan doldurulduğu gibi geri yazılmak üzere olan yanıttır (ResponseNo, ContentType, ContentText...) ve E başarı durumunda nil veya hedef sunucuya başvururken fırlatılan istisnadır. Olayı sonucu günlüğe kaydetmek, istemciye döndürülmeden önce yanıt başlıklarını/gövdesini yeniden yazmak veya yukarı akış çağrısı başarısız olduğunda yanıtı özel bir hata sayfasıyla geçersiz kılmak için kullanın.
procedure OnAfterForwardHTTP(Connection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo;
AResponseInfo: TIdHTTPResponseInfo; E: Exception);
begin
if Assigned(E) then
begin
AResponseInfo.ResponseNo := 502;
AResponseInfo.ContentText := 'Upstream error: ' + E.Message;
end
else
Log(Format('forwarded %s -> %d', [ARequestInfo.Document, AResponseInfo.ResponseNo]));
end;