TsgcWSPClient_WAMP › Metody › Call
Wywołuje zdalną procedurę identyfikowaną przez jej URI i koreluje ostateczny wynik lub błąd z dostarczonym identyfikatorem wywołania.
procedure Call(const aCallId, aProcURI: String; aArguments: String = '');
| Nazwa | Typ | Opis |
|---|---|---|
aCallId | const String | Unikalny identyfikator generowany przez wywołującego, odsyłany z powrotem w OnCallResult, OnCallProgressResult lub OnCallError; zazwyczaj GUID, dzięki któremu równoczesne wywołania można kierować do odpowiednich kontynuacji. |
aProcURI | const String | W pełni kwalifikowany URI procedury zdalnej lub skrót w postaci prefix:name rozwiązywany przez wcześniejszą rejestrację Prefix. |
aArguments | String | Opcjonalny ładunek JSON z argumentami wywołania. Należy przekazać tablicę JSON dla argumentów pozycyjnych lub obiekt JSON dla argumentów nazwanych; w przypadku procedur bez parametrów należy pozostawić pole puste. |
Wysyła wiadomość WAMP v1 CALL (identyfikator typu 2) przez aktywny transport. Wywołanie jest asynchroniczne: metoda zwraca kontrolę, gdy tylko ramka zostanie kolejkowana, a wynik jest dostarczany później przez jedno ze zdarzeń RPC. Serwer może przesyłać strumień wyników pośrednich przez OnCallProgressResult przed wywołaniem końcowego OnCallResult lub OnCallError. Aby przerwać trwające wywołanie, należy użyć CancelCall z tym samym aCallId.
var
vCallId: string;
begin
vCallId := TGuid.NewGuid.ToString;
WAMP.Call(vCallId, 'http://example.com/simple#add', '[23, 19]');
end;