TsgcWebSocketServer_HTTPAPIEventos › OnAfterForwardHTTP

OnAfterForwardHTTP Event

Disparado após uma requisição HTTP ter sido encaminhada para que a aplicação possa inspecionar o resultado ou um erro retornado pelo servidor upstream.

Sintaxe

property OnAfterForwardHTTP: TsgcWSHTTPAPIAfterForwardHTTP;
// TsgcWSHTTPAPIAfterForwardHTTP = procedure(Connection: TsgcWSConnection; aRequestInfo: THttpServerRequest; var aResponseInfo: THttpServerResponse; E: Exception) of object

Valor Padrão

Observações

OnAfterForwardHTTP é gerado assim que OnBeforeForwardHTTP habilitou o encaminhamento e a requisição HTTP upstream foi concluída. aRequestInfo é a requisição original do cliente, aResponseInfo é a resposta prestes a ser escrita de volta ao cliente (ResponseNo, ContentType, ContentText...) conforme preenchida pelo servidor upstream, e E é nil em caso de sucesso ou a exceção gerada ao contatar o servidor de destino. Use o evento para registrar o resultado, reescrever os cabeçalhos/corpo da resposta antes que sejam retornados ao cliente, ou substituir a resposta por uma página de erro personalizada quando a chamada upstream falhar.

Exemplo


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;

Voltar para Eventos