Home > SYS_MessageBus > rpcService
SYS_MessageBus.rpcService() method
Private message bus: register RPC service
Signature
typescript
function rpcService(topic: string, callbackFn: (...args: Array<any>) => any | Promise<any>): void;1
Parameters
Parameter | Type | Description |
|---|---|---|
topic | string | Theme |
callbackFn | (...args: Array<any>) => any | Promise<any> | Callback after receiving the message |
Returns
void
Example
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