TsgcWSPServer_WAMP › 方法 › CallResult
向调用方发送 CALLRESULT 回复(消息类型 3),携带先前接收到的 RPC 的成功结果。
procedure CallResult(const aCallId: String; const aResult: String = '');
| 名称 | 类型 | 描述 |
|---|---|---|
aCallId | const String | 客户端在最初调用远程过程时生成的标识符;用于将回复与待处理的调用关联。 |
aResult | const String | 返回给调用方的结果载荷。可以是序列化为字符串的任何值(数字、带引号的文本、JSON 对象、JSON 数组等)。 |
在远程过程执行成功完成后,从 OnCall 处理程序内部(或之后异步地)调用此方法。服务器查找与 aCallId 关联的连接,序列化一个 WAMP CALLRESULT 帧 [3, CallID, Result],将其分发给调用方,并从待处理列表中删除该调用。如果 aCallId 未找到(调用从未注册,或已被回复/取消),该方法不执行任何操作。对于产生多个块的 RPC,对中间片段使用 CallProgressResult,对最终片段使用 CallResult;若要报告失败,请使用 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;