Web.HTTPApp.TCustomWebDispatcher.DispatchAction

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function DispatchAction(Request: TWebRequest;  Response: TWebResponse): Boolean;

C++

bool __fastcall DispatchAction(TWebRequest* Request, TWebResponse* Response);

Propriétés

Type Visibilité  Source Unité  Parent
function protected
Web.HTTPApp.pas
Web.HTTPApp.hpp
Web.HTTPApp TCustomWebDispatcher

Description

Transmet un message de requête HTTP aux éléments action de Actions jusqu'à ce qu'il soit géré.

L'application Web appelle la méthode DispatchAction quand elle reçoit un message de requête HTTP afin que le répartiteur puisse transmettre la requête aux éléments action qui peuvent générer la réponse.

Avant que DispatchAction ne recherche les éléments action pouvant gérer le message de requête HTTP représenté par le paramètre Request, elle génère un événement BeforeDispatch. Si le gestionnaire d'événement BeforeDispatch traite l'action, le répartiteur ne transmet pas le message de requêtes aux éléments action.

S'il n'y a pas de gestionnaire d'événement BeforeDispatch ou s'il n'a pas traité la requête, DispatchAction essaye d'associer les propriétés MethodType et PathInfo de la requête avec les propriétés MethodType et PathInfo de chaque élément action de la propriété Actions. Quand un élément action correspond aux valeurs MethodType et PathInfo de la requête, DispatchAction appelle son gestionnaire d'événement OnAction.

Le gestionnaire d'événement OnAction peut renseigner la réponse à la requête ou indiquer que la requête n'est pas entièrement gérée, ce qui permet à un autre élément action de compléter le traitement de la requête. Si le gestionnaire d'événement OnAction ne termine pas la requête, DispatchAction continue à rechercher les éléments action de la propriété Actions et à appeler le gestionnaire d'événement OnAction de ceux qui correspondent.

Si tous les éléments action ont été testés alors que la requête n'est pas entièrement traitée, DispatchAction appelle le gestionnaire d'événement OnAction de l'élément action par défaut.

Si la requête a été traitée par le gestionnaire d'événement BeforeDispatch ou par l'un des éléments action, DispatchAction génère un événement AfterDispatch. L'événement AfterDispatch n'a pas lieu si l'événement BeforeDispatch ou l'un des éléments action a déjà expédié la réponse.

DispatchAction renvoie une valeur booléenne indiquant si l'application Web peut expédier le message de réponse si cela n'a pas déjà été fait. DispatchAction renvoie true si la requête a été traitée par les éléments action et si le gestionnaire d'événement AfterDispatch n'a pas affecté la valeur false à son paramètre Handled.

Voir aussi