TsgcWSPServer_WAMP › Methods › CallResult
Stuurt een CALLRESULT-antwoord (berichttype 3) naar de aanroeper met het succesvolle resultaat van een eerder ontvangen RPC.
procedure CallResult(const aCallId: String; const aResult: String = '');
| Naam | Type | Beschrijving |
|---|---|---|
aCallId | const String | Identificatie die door de client wordt gegenereerd wanneer deze de remote procedure oorspronkelijk aanroept; wordt gebruikt om het antwoord te correleren met de uitstaande aanroep. |
aResult | const String | Resultaatpayload geretourneerd aan de aanroeper. Kan elke waarde zijn die als string is geserialiseerd (getal, geciteerde tekst, JSON-object, JSON-array, enz.). |
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.
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;