@cloudpss/ubrpc
Version:
Rpc server/client build on websocket and ubjson.
23 lines (19 loc) • 651 B
JavaScript
import { RpcClientSocket } from '@cloudpss/ubrpc';
import { setTimeout } from 'node:timers/promises';
import { WebSocket } from 'ws';
const rpc = new RpcClientSocket('ws://localhost:8090');
//await setTimeout(1000);
const result = await rpc.call('hello', 'world');
console.log(result);
const s = rpc.subscribe('timer', 1000).subscribe({
next: console.log,
complete: () => console.log('complete'),
error: () => console.log('error'),
});
await setTimeout(1200);
s.unsubscribe();
await setTimeout(1000);
rpc.socket.close(3600);
await setTimeout(1000);
console.log(await rpc.call('hello', undefined));
new WebSocket('ws://localhost:8090');