TsgcWebSocketServer_HTTPAPIEventos › OnAfterForwardHTTP

OnAfterForwardHTTP Evento

Se dispara después de que se haya reenviado una solicitud HTTP para que la aplicación pueda inspeccionar el resultado o un error devuelto por el servidor ascendente.

Sintaxis

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

Valor Predeterminado

Observaciones

OnAfterForwardHTTP se activa una vez que OnBeforeForwardHTTP ha habilitado el reenvío y la solicitud HTTP hacia el servidor de destino se ha completado. aRequestInfo es la solicitud original del cliente, aResponseInfo es la respuesta que se va a escribir de vuelta al cliente (ResponseNo, ContentType, ContentText...) tal como la devolvió el servidor de destino, y E es nil si todo fue correcto o la excepción producida al contactar con el servidor de destino. Use el evento para registrar el resultado, reescribir cabeceras/cuerpo de la respuesta antes de devolverla al cliente, o reemplazarla con una página de error personalizada cuando la llamada al destino haya fallado.

Ejemplo


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;

Volver a Eventos