edge/doc/apps/server-api/rpc.md
William Petit b5b4042cc7
All checks were successful
arcad/edge/pipeline/head This commit looks good
feat(sdk,client): add menu to help navigation between apps
2023-04-20 10:17:37 +02:00

43 lines
1.0 KiB
Markdown

# Module `rpc`
Ce module permet de déclarer des méthodes côté serveur qui seront "invoquable" côté client via la méthode [`Edge.Client.rpc(method: string, params: Object): Promise`](../client-api/README.md#edgerpcmethod-string-params-object-promise).
## Méthodes
### `rpc.register(name: string, cb?: Function): void`
Marque une fonction comme étant appelable par le client.
#### Arguments
- `name` **string** Le nom de la fonction telle qu'elle sera appelable par le client. Si `cb` n'est pas spécifié, la fonction portant le même nom est utilisée.
- `cb` **Function** Référence de la fonction à exécuter.
#### Valeur de retour
Aucune
#### Usage
```js
function onInit() {
rpc.register("echo", echo);
}
function echo(ctx, params) {
return params;
}
```
**Côté client**
```js
Edge.Client.connect().then(() => {
Edge.Client.rpc("echo", { hello: "world!" })
.then(result => console.log(result))
.catch(err => console.error(err));
});
```
### `rpc.unregister(name: string): void`
> `TODO`