43 lines
1023 B
Markdown
43 lines
1023 B
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.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.connect().then(() => {
|
||
|
Edge.rpc("echo", { hello: "world!" })
|
||
|
.then(result => console.log(result))
|
||
|
.catch(err => console.error(err));
|
||
|
});
|
||
|
```
|
||
|
|
||
|
### `rpc.unregister(name: string): void`
|
||
|
|
||
|
> `TODO`
|