TsgcWebSocketHTTPServer › Événements

Événements TsgcWebSocketHTTPServer

Événements que vous pouvez gérer, regroupés par objectif, suivis de la liste alphabétique complète.

Cycle de vie

NomDescription
OnStartup Se déclenche après que le serveur a démarré et est prêt à accepter des connexions.
OnShutdownSe déclenche après l'arrêt du serveur, lorsqu'aucune connexion supplémentaire n'est acceptée.
OnTCPConnectSe déclenche après la connexion d'un client au niveau TCP et avant le handshake WebSocket, de sorte que la connexion peut être acceptée ou rejetée.
OnConnectSe déclenche chaque fois qu'une connexion WebSocket est établie avec un client.
OnDisconnectSe déclenche chaque fois qu'une connexion WebSocket avec un client est interrompue.
OnHandshake Se déclenche après que la handshake a été évaluée côté serveur et avant l'envoi de la réponse.
OnError Se déclenche chaque fois qu'une erreur de protocole WebSocket se produit, par exemple lors d'un handshake mal formé.
OnExceptionSe déclenche chaque fois qu'une exception non gérée est levée lors du traitement d'une connexion client.
OnUnknownProtocolSe déclenche lorsque le premier message ne correspond à aucun protocole connu afin que la connexion puisse être acceptée ou rejetée.
OnUnknownAuthentication Se déclenche lorsque l'authentification est activée et que la méthode d'authentification n'est pas reconnue par le serveur.

Données

NomDescription
OnMessageSe déclenche chaque fois qu'un client envoie un message texte et qu'il est reçu par le serveur.
OnBinarySe déclenche chaque fois qu'un client envoie un message binaire reçu par le serveur.
OnFragmentedSe déclenche lorsqu'un fragment de message est reçu (uniquement lorsque Options.FragmentedMessages est frgAll ou frgOnlyFragmented).

HTTP

NomDescription
OnBeforeCommandSe déclenche avant OnCommandGet ou OnCommandOther afin que la requête puisse être examinée, autorisée ou court-circuitée avec une réponse 401.
OnCommandGet Se déclenche lorsque le serveur HTTP reçoit une requête GET, POST ou HEAD afin que l'application puisse construire la réponse.
OnCommandOther Se déclenche lorsque le serveur HTTP reçoit une méthode autre que GET, POST ou HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnBeforeForwardHTTP 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.
OnAfterForwardHTTP Se déclenche après qu'une requête HTTP a été transférée afin que l'application puisse inspecter le résultat ou une erreur renvoyée par le serveur en amont.
OnHTTP2BeforeAsyncRequestDéclenché avant qu'une requête HTTP/2 ne soit mise en file d'attente, afin que l'application puisse choisir si elle s'exécute dans le pool de threads ou dans le thread de connexion.

Sessions

NomDescription
OnCreateSessionSe déclenche lorsque le serveur HTTP a besoin de créer une nouvelle session afin que l'application puisse fournir une instance TIdHTTPSession personnalisée.
OnSessionStartSe déclenche lorsqu'une session HTTP est démarrée et ajoutée à la SessionList.
OnSessionEndSe déclenche lorsqu'une session HTTP est fermée, explicitement ou après expiration de SessionTimeout.
OnInvalidSession Se déclenche lorsqu'une requête HTTP présente un ID de session inconnu ou expiré afin que l'application puisse décider comment réagir.

Téléversement HTTP

NomDescription
OnHTTPUploadBeforeSaveFileSe déclenche avant qu'un fichier extrait d'un téléchargement multipart/form-data soit sauvegardé sur disque afin que le nom et le chemin puissent être personnalisés.
OnHTTPUploadAfterSaveFileSe déclenche après qu'un fichier extrait d'un upload multipart/form-data a été sauvegardé sur disque.
OnHTTPUploadReadInputSe déclenche lorsque le décodeur multipart/form-data lit un champ de saisie non-fichier afin que sa valeur puisse être capturée.
OnHTTPUploadBeforeCreatePostStream Se déclenche après la lecture des en-têtes de la requête et avant la création du flux POST, afin que le chargement puisse être accepté ou rejeté.

Fiabilité

NomDescription
OnBeforeHeartBeatSe déclenche avant chaque ping HeartBeat afin que l'application puisse implémenter un keep-alive personnalisé.
OnLoadBalancerConnectSe déclenche lorsque le serveur se connecte au serveur Load Balancer.
OnLoadBalancerDisconnectSe déclenche lorsque le serveur se déconnecte du serveur Load Balancer.
OnLoadBalancerError Se déclenche lorsqu'une erreur survient lors de la communication avec le serveur d'équilibrage de charge.

Sécurité

NomDescription
OnAuthenticationSe déclenche lorsque l'authentification est activée afin que l'application puisse vérifier le nom d'utilisateur et le mot de passe et accepter ou rejeter la connexion.
OnSSLGetHandler Se déclenche avant la création du gestionnaire SSL afin qu'une instance de gestionnaire personnalisée côté serveur puisse être fournie.
OnSSLAfterCreateHandlerSe déclenche après la création du gestionnaire SSL afin que ses propriétés puissent être personnalisées.
OnSSLALPNSelectDéclenché lors d'un handshake ALPN activé afin que l'application puisse choisir le protocole à négocier.
OnSSLVerifyPeer Se déclenche lorsque VerifyCertificate est activé et que le client présente un certificat à accepter ou à rejeter.

Tous les événements (ordre alphabétique)

NomDescription
OnAfterForwardHTTP Se déclenche après qu'une requête HTTP a été transférée afin que l'application puisse inspecter le résultat ou une erreur renvoyée par le serveur en amont.
OnAuthenticationSe déclenche lorsque l'authentification est activée afin que l'application puisse vérifier le nom d'utilisateur et le mot de passe et accepter ou rejeter la connexion.
OnBeforeCommandSe déclenche avant OnCommandGet ou OnCommandOther afin que la requête puisse être examinée, autorisée ou court-circuitée avec une réponse 401.
OnBeforeForwardHTTP 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.
OnBeforeHeartBeatSe déclenche avant chaque ping HeartBeat afin que l'application puisse implémenter un keep-alive personnalisé.
OnBinarySe déclenche chaque fois qu'un client envoie un message binaire reçu par le serveur.
OnCommandGet Se déclenche lorsque le serveur HTTP reçoit une requête GET, POST ou HEAD afin que l'application puisse construire la réponse.
OnCommandOther Se déclenche lorsque le serveur HTTP reçoit une méthode autre que GET, POST ou HEAD (PUT, DELETE, OPTIONS, PATCH...).
OnConnectSe déclenche chaque fois qu'une connexion WebSocket est établie avec un client.
OnCreateSessionSe déclenche lorsque le serveur HTTP a besoin de créer une nouvelle session afin que l'application puisse fournir une instance TIdHTTPSession personnalisée.
OnDisconnectSe déclenche chaque fois qu'une connexion WebSocket avec un client est interrompue.
OnError Se déclenche chaque fois qu'une erreur de protocole WebSocket se produit, par exemple lors d'un handshake mal formé.
OnExceptionSe déclenche chaque fois qu'une exception non gérée est levée lors du traitement d'une connexion client.
OnFragmentedSe déclenche lorsqu'un fragment de message est reçu (uniquement lorsque Options.FragmentedMessages est frgAll ou frgOnlyFragmented).
OnHandshake Se déclenche après que la handshake a été évaluée côté serveur et avant l'envoi de la réponse.
OnHTTP2BeforeAsyncRequestDéclenché avant qu'une requête HTTP/2 ne soit mise en file d'attente, afin que l'application puisse choisir si elle s'exécute dans le pool de threads ou dans le thread de connexion.
OnHTTPUploadAfterSaveFileSe déclenche après qu'un fichier extrait d'un upload multipart/form-data a été sauvegardé sur disque.
OnHTTPUploadBeforeCreatePostStream Se déclenche après la lecture des en-têtes de la requête et avant la création du flux POST, afin que le chargement puisse être accepté ou rejeté.
OnHTTPUploadBeforeSaveFileSe déclenche avant qu'un fichier extrait d'un téléchargement multipart/form-data soit sauvegardé sur disque afin que le nom et le chemin puissent être personnalisés.
OnHTTPUploadReadInputSe déclenche lorsque le décodeur multipart/form-data lit un champ de saisie non-fichier afin que sa valeur puisse être capturée.
OnInvalidSession Se déclenche lorsqu'une requête HTTP présente un ID de session inconnu ou expiré afin que l'application puisse décider comment réagir.
OnLoadBalancerConnectSe déclenche lorsque le serveur se connecte au serveur Load Balancer.
OnLoadBalancerDisconnectSe déclenche lorsque le serveur se déconnecte du serveur Load Balancer.
OnLoadBalancerError Se déclenche lorsqu'une erreur survient lors de la communication avec le serveur d'équilibrage de charge.
OnMessageSe déclenche chaque fois qu'un client envoie un message texte et qu'il est reçu par le serveur.
OnSessionEndSe déclenche lorsqu'une session HTTP est fermée, explicitement ou après expiration de SessionTimeout.
OnSessionStartSe déclenche lorsqu'une session HTTP est démarrée et ajoutée à la SessionList.
OnShutdownSe déclenche après l'arrêt du serveur, lorsqu'aucune connexion supplémentaire n'est acceptée.
OnSSLAfterCreateHandlerSe déclenche après la création du gestionnaire SSL afin que ses propriétés puissent être personnalisées.
OnSSLALPNSelectDéclenché lors d'un handshake ALPN activé afin que l'application puisse choisir le protocole à négocier.
OnSSLGetHandler Se déclenche avant la création du gestionnaire SSL afin qu'une instance de gestionnaire personnalisée côté serveur puisse être fournie.
OnSSLVerifyPeer Se déclenche lorsque VerifyCertificate est activé et que le client présente un certificat à accepter ou à rejeter.
OnStartup Se déclenche après que le serveur a démarré et est prêt à accepter des connexions.
OnTCPConnectSe déclenche après la connexion d'un client au niveau TCP et avant le handshake WebSocket, de sorte que la connexion peut être acceptée ou rejetée.
OnUnknownAuthentication Se déclenche lorsque l'authentification est activée et que la méthode d'authentification n'est pas reconnue par le serveur.
OnUnknownProtocolSe déclenche lorsque le premier message ne correspond à aucun protocole connu afin que la connexion puisse être acceptée ou rejetée.