ease-rpc
v0.0.4
Published
Handle browser RPC as ease as possible.
Downloads
5
Readme
ease-rpc
ease rpc in browser use iframe ipcRenderer and ipcMain.
usage
in browser
// client
import EaseRPC from 'ease-rpc';
const rpc = new EaseRPC({
channelId: 'ease-rpc-01',
target: window.parent,
});
const ret = await rpc.request('GET_TIMESTAMP', { locale: 'zh' }); // {time: 1663074589048}
// server
import EaseRPC from 'ease-rpc';
const rpc = new EaseRPC({
channelId: 'ease-rpc-01',
target: document.querySelector('#child').contentWindow,
});
rpc.serve(async (action, payload) => {
if (action === 'GET_TIMESTAMP') {
if (payload.locale === 'zh') {
return { time: Date.now() + 1000 };
}
return { time: Date.now() };
}
return { data: 'NULL' }
});