TsgcWSPClient_WAMP › イベント › OnCallError
Call によって呼び出されたリモートプロシージャがサーバーで失敗するか拒否されたときに発生します。
property OnCallError: TsgcWSCallErrorEvent;
// TsgcWSCallErrorEvent = procedure(Connection: TsgcWSConnection; CallId, ErrorURI, ErrorDesc, ErrorDetails: string) of object
—
WAMP CALLERROR フレーム(タイプ ID 4)の応答として配信されます。CallId は Call に渡された ID と一致するため、ハンドラーは発信リクエストを照合できます。ErrorURI は正規のエラー識別子(例: http://example.com/error#invalid_argument)、ErrorDesc は人間が読めるメッセージ、ErrorDetails は構造化された診断データを含むオプションの JSON ペイロードです。OnCallResult、OnCallError、またはキャンセルエラーのいずれかが、すべての Call に対して正確に 1 回発生することが保証されています。
procedure TForm1.WAMPCallError(Connection: TsgcWSConnection;
CallId, ErrorURI, ErrorDesc, ErrorDetails: string);
begin
Memo1.Lines.Add(Format('call %s failed: %s - %s',
[CallId, ErrorURI, ErrorDesc]));
end;