TsgcWSPServer_WAMPMethods › CallResult

CallResult Methode

Stuurt een CALLRESULT-antwoord (berichttype 3) naar de aanroeper met het succesvolle resultaat van een eerder ontvangen RPC.

Syntaxis

procedure CallResult(const aCallId: String; const aResult: String = '');

Parameters

NaamTypeBeschrijving
aCallIdconst StringIdentificatie die door de client wordt gegenereerd wanneer deze de remote procedure oorspronkelijk aanroept; wordt gebruikt om het antwoord te correleren met de uitstaande aanroep.
aResultconst StringResultaatpayload geretourneerd aan de aanroeper. Kan elke waarde zijn die als string is geserialiseerd (getal, geciteerde tekst, JSON-object, JSON-array, enz.).

Opmerkingen

Roep deze methode aan vanuit een OnCall-handler (of later, asynchroon) zodra de uitvoering van de externe procedure succesvol is voltooid. De server zoekt de verbinding op die is gekoppeld aan aCallId, serialiseert een WAMP CALLRESULT-frame [3, CallID, Result], verzendt dit naar de aanroeper en verwijdert de aanroep uit de wachtende lijst. Als aCallId niet wordt gevonden (de aanroep was nooit geregistreerd of er is al op gereageerd/geannuleerd), doet de methode niets. Voor RPC's die meerdere segmenten produceren, gebruikt u CallProgressResult voor de tussenliggende stukken en CallResult voor het laatste; om een fout te melden gebruikt u CallError.

Voorbeeld

procedure TForm1.sgcWSPServer_WAMP1Call(Connection: TsgcWSConnection;
  const CallId, ProcURI: string; Arguments: TStringList);
begin
  if ProcURI = 'com.example.add' then
    sgcWSPServer_WAMP1.CallResult(CallId, '42');
end;

Terug naar methoden