TsgcWebSocketHTTPServer › Eventi

TsgcWebSocketHTTPServer Eventi

Eventi gestibili, raggruppati per scopo, seguiti dall'elenco alfabetico completo.

Ciclo di vita

NomeDescrizione
OnStartupSi attiva dopo che il server è avviato ed è pronto ad accettare connessioni.
OnShutdownSi attiva dopo che il server si è arrestato e non vengono più accettate connessioni.
OnTCPConnectSi attiva dopo che un client si connette a livello TCP e prima dell'handshake WebSocket, consentendo di accettare o rifiutare la connessione.
OnConnectSi attiva ogni volta che viene stabilita una connessione WebSocket con un client.
OnDisconnectSi attiva ogni volta che una connessione WebSocket con un client viene interrotta.
OnHandshakeViene generato dopo che l'handshake è stato valutato lato server e prima che venga inviata la risposta.
OnErrorSi attiva ogni volta che si verifica un errore di protocollo WebSocket, ad esempio un handshake malformato.
OnExceptionSi attiva ogni volta che viene generata un'eccezione non gestita durante l'elaborazione di una connessione client.
OnUnknownProtocolSi attiva quando il primo messaggio non corrisponde a un protocollo noto, in modo che la connessione possa essere accettata o rifiutata.
OnUnknownAuthenticationViene attivato quando l'autenticazione è abilitata e il metodo di autenticazione non è riconosciuto dal server.

Data

NomeDescrizione
OnMessageViene attivato ogni volta che un client invia un messaggio di testo e questo viene ricevuto dal server.
OnBinarySi attiva ogni volta che un client invia un messaggio binario e questo viene ricevuto dal server.
OnFragmentedGenerato quando viene ricevuto un frammento di un messaggio (solo quando Options.FragmentedMessages è frgAll o frgOnlyFragmented).

HTTP

NomeDescrizione
OnBeforeCommandSi attiva prima di OnCommandGet o OnCommandOther in modo che la richiesta possa essere filtrata, autorizzata o interrotta con una risposta 401.
OnCommandGetViene attivato quando il server HTTP riceve una richiesta GET, POST o HEAD affinché l'applicazione possa costruire la risposta.
OnCommandOtherGenerato quando il server HTTP riceve un metodo diverso da GET, POST o HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnBeforeForwardHTTPSi attiva prima che una richiesta HTTP venga inviata, in modo da poterla inoltrare (reverse-proxy) a un altro server HTTP.
OnAfterForwardHTTPViene attivato dopo che una richiesta HTTP è stata inoltrata, consentendo all'applicazione di ispezionare il risultato o un errore restituito dal server upstream.
OnHTTP2BeforeAsyncRequestViene generato prima che una richiesta HTTP/2 venga accodata, consentendo all'applicazione di scegliere se eseguirla nel pool di thread o nel thread di connessione.

Sessioni

NomeDescrizione
OnCreateSessionGenerato quando il server HTTP deve creare una nuova sessione, in modo che l'applicazione possa fornire un'istanza personalizzata di TIdHTTPSession.
OnSessionStartSi attiva quando una sessione HTTP viene avviata e aggiunta alla SessionList.
OnSessionEndSi attiva quando una sessione HTTP viene chiusa, esplicitamente o dopo la scadenza di SessionTimeout.
OnInvalidSessionViene generato quando una richiesta HTTP presenta un ID di sessione sconosciuto o scaduto, in modo che l'applicazione possa decidere come reagire.

HTTP Upload

NomeDescrizione
OnHTTPUploadBeforeSaveFileSi attiva prima che un file estratto da un upload multipart/form-data venga salvato su disco, in modo che il nome e il percorso possano essere personalizzati.
OnHTTPUploadAfterSaveFileGenerato dopo che un file estratto da un upload multipart/form-data è stato salvato su disco.
OnHTTPUploadReadInputSi attiva quando il decoder multipart/form-data legge un campo di input non file in modo che il suo valore possa essere catturato.
OnHTTPUploadBeforeCreatePostStreamViene generato dopo che le intestazioni della richiesta sono state lette e prima che venga creato lo stream POST, consentendo di accettare o rifiutare il caricamento.

Affidabilità

NomeDescrizione
OnBeforeHeartBeatSi attiva prima di ogni ping HeartBeat in modo che l'applicazione possa implementare un keep-alive personalizzato.
OnLoadBalancerConnectViene attivato quando il server si connette al Load Balancer Server.
OnLoadBalancerDisconnectSi attiva quando il server si disconnette dal Load Balancer Server.
OnLoadBalancerErrorSi attiva quando si verifica un errore nella comunicazione con il server Load Balancer.

Sicurezza

NomeDescrizione
OnAuthenticationSi attiva quando l'autenticazione è abilitata in modo che l'applicazione possa verificare utente e password e accettare o rifiutare la connessione.
OnSSLGetHandlerViene generato prima della creazione dell'SSL handler, in modo da poter fornire un'istanza di handler personalizzata lato server.
OnSSLAfterCreateHandlerSi attiva dopo che l'handler SSL è stato creato, così le sue proprietà possono essere personalizzate.
OnSSLALPNSelectViene attivato durante un handshake con ALPN abilitato affinché l'applicazione possa scegliere quale protocollo negoziare.
OnSSLVerifyPeerSi attiva quando VerifyCertificate è abilitato e il client presenta un certificato da accettare o rifiutare.

Tutti gli eventi (in ordine alfabetico)

NomeDescrizione
OnAfterForwardHTTPViene attivato dopo che una richiesta HTTP è stata inoltrata, consentendo all'applicazione di ispezionare il risultato o un errore restituito dal server upstream.
OnAuthenticationSi attiva quando l'autenticazione è abilitata in modo che l'applicazione possa verificare utente e password e accettare o rifiutare la connessione.
OnBeforeCommandSi attiva prima di OnCommandGet o OnCommandOther in modo che la richiesta possa essere filtrata, autorizzata o interrotta con una risposta 401.
OnBeforeForwardHTTPSi attiva prima che una richiesta HTTP venga inviata, in modo da poterla inoltrare (reverse-proxy) a un altro server HTTP.
OnBeforeHeartBeatSi attiva prima di ogni ping HeartBeat in modo che l'applicazione possa implementare un keep-alive personalizzato.
OnBinarySi attiva ogni volta che un client invia un messaggio binario e questo viene ricevuto dal server.
OnCommandGetViene attivato quando il server HTTP riceve una richiesta GET, POST o HEAD affinché l'applicazione possa costruire la risposta.
OnCommandOtherGenerato quando il server HTTP riceve un metodo diverso da GET, POST o HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnConnectSi attiva ogni volta che viene stabilita una connessione WebSocket con un client.
OnCreateSessionGenerato quando il server HTTP deve creare una nuova sessione, in modo che l'applicazione possa fornire un'istanza personalizzata di TIdHTTPSession.
OnDisconnectSi attiva ogni volta che una connessione WebSocket con un client viene interrotta.
OnErrorSi attiva ogni volta che si verifica un errore di protocollo WebSocket, ad esempio un handshake malformato.
OnExceptionSi attiva ogni volta che viene generata un'eccezione non gestita durante l'elaborazione di una connessione client.
OnFragmentedGenerato quando viene ricevuto un frammento di un messaggio (solo quando Options.FragmentedMessages è frgAll o frgOnlyFragmented).
OnHandshakeViene generato dopo che l'handshake è stato valutato lato server e prima che venga inviata la risposta.
OnHTTP2BeforeAsyncRequestViene generato prima che una richiesta HTTP/2 venga accodata, consentendo all'applicazione di scegliere se eseguirla nel pool di thread o nel thread di connessione.
OnHTTPUploadAfterSaveFileGenerato dopo che un file estratto da un upload multipart/form-data è stato salvato su disco.
OnHTTPUploadBeforeCreatePostStreamViene generato dopo che le intestazioni della richiesta sono state lette e prima che venga creato lo stream POST, consentendo di accettare o rifiutare il caricamento.
OnHTTPUploadBeforeSaveFileSi attiva prima che un file estratto da un upload multipart/form-data venga salvato su disco, in modo che il nome e il percorso possano essere personalizzati.
OnHTTPUploadReadInputSi attiva quando il decoder multipart/form-data legge un campo di input non file in modo che il suo valore possa essere catturato.
OnInvalidSessionViene generato quando una richiesta HTTP presenta un ID di sessione sconosciuto o scaduto, in modo che l'applicazione possa decidere come reagire.
OnLoadBalancerConnectViene attivato quando il server si connette al Load Balancer Server.
OnLoadBalancerDisconnectSi attiva quando il server si disconnette dal Load Balancer Server.
OnLoadBalancerErrorSi attiva quando si verifica un errore nella comunicazione con il server Load Balancer.
OnMessageViene attivato ogni volta che un client invia un messaggio di testo e questo viene ricevuto dal server.
OnSessionEndSi attiva quando una sessione HTTP viene chiusa, esplicitamente o dopo la scadenza di SessionTimeout.
OnSessionStartSi attiva quando una sessione HTTP viene avviata e aggiunta alla SessionList.
OnShutdownSi attiva dopo che il server si è arrestato e non vengono più accettate connessioni.
OnSSLAfterCreateHandlerSi attiva dopo che l'handler SSL è stato creato, così le sue proprietà possono essere personalizzate.
OnSSLALPNSelectViene attivato durante un handshake con ALPN abilitato affinché l'applicazione possa scegliere quale protocollo negoziare.
OnSSLGetHandlerViene generato prima della creazione dell'SSL handler, in modo da poter fornire un'istanza di handler personalizzata lato server.
OnSSLVerifyPeerSi attiva quando VerifyCertificate è abilitato e il client presenta un certificato da accettare o rifiutare.
OnStartupSi attiva dopo che il server è avviato ed è pronto ad accettare connessioni.
OnTCPConnectSi attiva dopo che un client si connette a livello TCP e prima dell'handshake WebSocket, consentendo di accettare o rifiutare la connessione.
OnUnknownAuthenticationViene attivato quando l'autenticazione è abilitata e il metodo di autenticazione non è riconosciuto dal server.
OnUnknownProtocolSi attiva quando il primo messaggio non corrisponde a un protocollo noto, in modo che la connessione possa essere accettata o rifiutata.