TsgcWebSocketHTTPServerÉvénements › OnBeforeForwardHTTP

OnBeforeForwardHTTP Événement

Se déclenche avant qu'une requête HTTP soit transmise afin qu'elle puisse être transférée (proxy inverse) vers un autre serveur HTTP.

Syntaxe

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

Valeur par défaut

Remarques

OnBeforeForwardHTTP est déclenché pour chaque requête HTTP et permet au serveur d'agir comme proxy inverse pour les points de terminaison sélectionnés. Inspectez ARequestInfo.Document pour décider si la requête doit être transmise ; si c'est le cas, définissez aForward.Enabled sur True et assignez aForward.URL au serveur cible. Des propriétés supplémentaires sur l'objet aForward affinent la requête transmise : Document (remplacer le chemin cible), QueryParams, Host, Origin, CustomHeaders, LogFilename, NoCache et TLSOptions pour les cibles HTTPS. Lorsque aForward.Enabled reste False, la requête est traitée localement via OnCommandGet/OnCommandOther comme d'habitude.

Exemple


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;

Retour aux événements