Utilisation des rappels

De RAD Studio
Aller à : navigation, rechercher

Remonter à Application Serveur DataSnap


Les rappels (callbacks) sont utiles quand le serveur a besoin de recommuniquer avec le client lors de l'exécution d'une méthode serveur. Les rappels permettent de repasser un paramètre JSON au client qui peut renvoyer une valeur JSON au serveur.

Afin de passer un rappel, la méthode serveur doit avoir un paramètre de type TDBXCallback, comme dans l'exemple suivant :

  procedure Callback(const PCallback: TDBXCallback);

Dans l'implémentation serveur, le rappel peut être invoqué à tout moment :

  PCallback.Execute(TJSONString.Create('test'));

L'invocation est synchrone et elle renvoie une valeur JSON client.

Sur le côté client, vous devez étendre une classe TDBXCallback et redéfinir la méthode Execute :

TCallbackClient = class(TDBXCallback)
function Execute(const Arg: TJSONValue): TJSONValue; override;
end;

La méthode serveur doit être invoquée par une instance de la classe de rappel client.

Les paramètres de rappel sont possédés par le serveur ou l'instance proxy, et libérés en fin d'exécution.


Voir aussi