TsgcWSPServer_WAMPZdarzenia › OnCall

OnCall Zdarzenie

Wywoływane, gdy klient wywołuje procedurę zdalną; procedura obsługi musi odpowiedzieć przez CallResult, CallProgressResult lub CallError.

Składnia

property OnCall: TsgcWSCallEvent;
// TsgcWSCallEvent = procedure(Connection: TsgcWSConnection; const CallId, ProcUri, Arguments: string) of object

Wartość domyślna

Uwagi

CallId to identyfikator wybrany przez wywołującego, który musi zostać odzwierciedlony w odpowiedzi. ProcUri to pełny URI procedury (wszelkie prefiksy zostały już rozwiązane). Arguments zawiera pozostałe elementy tablicy CALL jako ładunek zakodowany w JSON — liczba, ciąg znaków, obiekt, tablica lub sekwencja rozdzielona przecinkami dla wywołań z wieloma argumentami. Dla każdego wywołania CALL procedura obsługi powinna wygenerować dokładnie jedną terminalną odpowiedź: wywołać CallResult w przypadku powodzenia, CallError w przypadku niepowodzenia lub zero lub więcej ramek CallProgressResult zakończonych ostatecznym wywołaniem CallResult podczas strumieniowania częściowych wyników z powrotem do wywołującego.

Przykład


procedure TForm1.WAMPServerCall(Connection: TsgcWSConnection;
  const CallId, ProcUri, Arguments: string);
begin
  if ProcUri = 'http://example.com/rpc/add' then
    WSPServerWAMP1.CallResult(Connection, CallId, '42')
  else
    WSPServerWAMP1.CallError(Connection, CallId,
      'http://example.com/errors/not-found', 'unknown procedure');
end;

Powrót do Zdarzeń