Afficher : Delphi C++
Préférences d'affichage

Ajout d'une session au module Web

De RAD Studio

Remonter à Utilisation de WebBroker - Index

Les applications console CGI sont lancées en réponse à des messages de requête HTTP. Lorsque vous manipulez des bases de données dans des applications de ce type, vous pouvez utiliser la session par défaut pour gérer vos connexions aux bases de données car chaque message de requête possède sa propre instance de l'application. Chaque instance de l'application possède sa propre session par défaut.

Cependant, lorsque vous créez une application NSAPI ou ISAPI, chaque message de requête est géré dans un thread distinct d'une instance d'application. Pour empêcher que les connexions aux bases de données d'autres threads ne se parasitent, vous devez donner une session distincte à chaque thread.

Chaque message de requête dans une application ISAPI ou NSAPI génère un nouveau thread. Le module Web de ce thread est dynamiquement généré lors de l'exécution. Ajoutez un objet TSession au module Web pour gérer les connexions aux bases de données pour le thread qui contient le module Web.

A l'exécution, une instance distincte du module Web est générée pour chacun des threads. Chacun de ces modules contient l'objet session. Chaque session doit avoir un nom distinct pour que les threads qui gèrent les messages de requête ne parasitent pas leur connexion aux bases de données respectives. Pour que les objets session de chaque module s'attribuent dynamiquement un nom unique, définissez la propriété AutoSessionName de l'objet session. Chaque session s'attribuera dynamiquement un nom unique et définira la propriété SessionName de tous les ensembles de données du module de façon à ce qu'elle fasse référence à ce nom unique. Ceci permet l'interaction des threads de requête avec la base de données, sans interférences avec les autres messages de requête. Pour plus d'informations sur les sessions, voir Gestion des sessions des bases de données.

Voir aussi

Autres langues