TsgcWebSocketHTTPServerEvents › OnBeforeForwardHTTP

OnBeforeForwardHTTP Event

Dispara antes de uma requisição HTTP ser despachada, de modo que ela possa ser encaminhada (reverse-proxy) a outro servidor HTTP.

Sintaxe

property OnBeforeForwardHTTP: TsgcWSOnBeforeForwardHTTP;
// TsgcWSOnBeforeForwardHTTP = procedure(Connection: TsgcWSConnection; ARequestInfo: TIdHTTPRequestInfo; aForward: TsgcWSServerForwardHTTP) of object

Valor Padrão

Observações

OnBeforeForwardHTTP é gerado para cada requisição HTTP e permite que o servidor atue como um reverse proxy para endpoints selecionados. Inspecione ARequestInfo.Document para decidir se a requisição deve ser encaminhada; quando deve, defina aForward.Enabled como True e atribua aForward.URL ao servidor de destino. Propriedades adicionais no objeto aForward ajustam a requisição encaminhada: Document (sobrepõe o caminho de destino), QueryParams, Host, Origin, CustomHeaders, LogFilename, NoCache e TLSOptions para destinos HTTPS. Quando aForward.Enabled permanece False, a requisição é atendida localmente através de OnCommandGet/OnCommandOther como de costume.

Exemplo


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;

Voltar para Eventos