Home > SYS_MessageBus > rpcService
SYS_MessageBus.rpcService() method
私有消息总线:注册 RPC 服务
签名
typescript
function rpcService(topic: string, callbackFn: (...args: Array<any>) => any | Promise<any>): void;1
参数名
参数 | 类型 | 描述 |
|---|---|---|
topic | string | 主题 |
callbackFn | (...args: Array<any>) => any | Promise<any> | 接收到消息后的回调 |
返回值
void
示例
javascript
// 1. 注册同步服务:直接返回计算结果
eda.sys_MessageBus.rpcService('嘉立创示例_RPC服务_同步', (message) => {
return `同步响应:${message}`;
});
// 2. 注册异步服务:返回 Promise,处理完才响应
eda.sys_MessageBus.rpcService('嘉立创示例_RPC服务_异步', async (message) => {
await new Promise(resolve => setTimeout(resolve, 200));
return `异步响应:${message}`;
});
// 3. 分别调用两种服务验证
console.log(await eda.sys_MessageBus.rpcCall('嘉立创示例_RPC服务_同步', '参数甲'));
console.log(await eda.sys_MessageBus.rpcCall('嘉立创示例_RPC服务_异步', '参数乙'));1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14