TsgcWSPServer_WAMP › Methoden › CallResult
Sendet eine CALLRESULT-Antwort (Nachrichtentyp 3) an den Aufrufer mit dem erfolgreichen Ergebnis eines zuvor empfangenen RPC.
procedure CallResult(const aCallId: String; const aResult: String = '');
| Name | Typ | Beschreibung |
|---|---|---|
aCallId | const String | Vom Client generierter Bezeichner, als er ursprünglich die Remote-Prozedur aufgerufen hat; wird verwendet, um die Antwort mit dem ausstehenden Aufruf zu korrelieren. |
aResult | const String | Ergebnisnutzlast, die an den Aufrufer zurückgegeben wird. Kann jeder Wert sein, der als String serialisiert ist (Zahl, zitierter Text, JSON-Objekt, JSON-Array usw.). |
Rufen Sie diese Methode innerhalb eines OnCall-Handlers auf (oder später, asynchron), sobald die Ausführung der Remote-Prozedur erfolgreich abgeschlossen wurde. Der Server sucht die mit aCallId verknüpfte Verbindung, serialisiert einen WAMP-CALLRESULT-Frame [3, CallID, Result], leitet ihn an den Aufrufer weiter und entfernt den Aufruf aus der ausstehenden Liste. Wenn aCallId nicht gefunden wird (der Aufruf wurde nie registriert oder wurde bereits beantwortet/abgebrochen), tut die Methode nichts. Verwenden Sie für RPCs, die mehrere Chunks erzeugen, CallProgressResult für die Zwischenteile und CallResult für den finalen Teil; um einen Fehler zu melden, verwenden Sie stattdessen 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;