TsgcWebSocketServer_HTTPAPI › Eventi › OnAfterForwardHTTP
Viene attivato dopo che una richiesta HTTP è stata inoltrata, consentendo all'applicazione di ispezionare il risultato o un errore restituito dal server upstream.
property OnAfterForwardHTTP: TsgcWSHTTPAPIAfterForwardHTTP;
// TsgcWSHTTPAPIAfterForwardHTTP = procedure(Connection: TsgcWSConnection; aRequestInfo: THttpServerRequest; var aResponseInfo: THttpServerResponse; E: Exception) of object
—
OnAfterForwardHTTP viene generato una volta che OnBeforeForwardHTTP ha abilitato l'inoltro e la richiesta HTTP upstream è stata completata. aRequestInfo è la richiesta originale del client, aResponseInfo è la risposta che sta per essere scritta al client (ResponseNo, ContentType, ContentText...) così come popolata dal server upstream, mentre E è nil in caso di successo o contiene l'eccezione generata durante il contatto con il server di destinazione. Utilizzare l'evento per registrare il risultato, riscrivere le intestazioni/il corpo della risposta prima che vengano restituite al client, oppure sovrascrivere la risposta con una pagina di errore personalizzata quando la chiamata upstream ha avuto esito negativo.
procedure OnAfterForwardHTTP(Connection: TsgcWSConnection;
aRequestInfo: THttpServerRequest; var aResponseInfo: THttpServerResponse;
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;