TsgcWebSocketServer_HTTPAPI › Eventi › OnBeforeForwardHTTP
Si attiva prima che una richiesta HTTP venga inviata, in modo da poterla inoltrare (reverse-proxy) a un altro server HTTP.
property OnBeforeForwardHTTP: TsgcWSHTTPAPIBeforeForwardHTTP;
// TsgcWSHTTPAPIBeforeForwardHTTP = procedure(Connection : TsgcWSConnection_HTTPAPI; aRequestInfo: THttpServerRequest; aForward: TsgcWSServerForwardHTTP) of object
—
OnBeforeForwardHTTP viene generato per ogni richiesta HTTP ricevuta tramite HTTP.SYS e consente al server di agire come reverse proxy per endpoint selezionati. Esamini aRequestInfo.Document per decidere se la richiesta deve essere inoltrata; quando deve esserlo, imposti aForward.Enabled su True e assegni aForward.URL al server di destinazione. Proprietà aggiuntive sull'oggetto aForward affinano la richiesta inoltrata: Document (sovrascrive il percorso di destinazione), QueryParams, Host, Origin, CustomHeaders, LogFilename, NoCache e TLSOptions per destinazioni HTTPS. Quando aForward.Enabled rimane False la richiesta viene servita localmente tramite OnHTTPRequest come di consueto.
procedure OnBeforeForwardHTTP(Connection: TsgcWSConnection_HTTPAPI;
aRequestInfo: THttpServerRequest; aForward: TsgcWSServerForwardHTTP);
begin
if aRequestInfo.Document = '/internal' then
begin
aForward.Enabled := True;
aForward.URL := 'http://localhost:8080';
end;
end;