TsgcWebSocketHTTPServer › Eventos › OnBeforeForwardHTTP
Se activa antes de que se despache una solicitud HTTP para que pueda reenviarse (proxy inverso) a otro servidor HTTP.
property OnBeforeForwardHTTP: TsgcWSOnBeforeForwardHTTP;
// TsgcWSOnBeforeForwardHTTP = procedure(Connection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo; aForward: TsgcWSServerForwardHTTP) of object
—
OnBeforeForwardHTTP se activa para cada solicitud HTTP y permite que el servidor actúe como proxy inverso para los endpoints seleccionados. Inspeccione ARequestInfo.Document para decidir si la solicitud debe redirigirse; cuando deba hacerlo, establezca aForward.Enabled en True y asigne aForward.URL al servidor de destino. Las propiedades adicionales del objeto aForward permiten ajustar la solicitud redirigida: Document (anula la ruta de destino), QueryParams, Host, Origin, CustomHeaders, LogFilename, NoCache y TLSOptions para destinos HTTPS. Cuando aForward.Enabled permanece en False, la solicitud se atiende localmente a través de OnCommandGet/OnCommandOther como de costumbre.
procedure OnBeforeForwardHTTP(Connection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo;
aForward: TsgcWSServerForwardHTTP);
begin
if ARequestInfo.Document = '/internal' then
begin
aForward.Enabled := True;
aForward.URL := 'http://localhost:8080';
end;
end;