bar*_*ara 18 javascript rpc websocket node.js promise
是否有任何与承诺一起使用的 RPC 模块?
在服务器上,我有返回承诺的函数。我想向浏览器客户端公开它们以通过 websockts 或回退调用。我找到了一些 RPC 库,例如 dnode,但他们希望回调作为参数。
我想要这样的东西:
服务器:
rpc.expose({
超时:函数(时间){
var d = Q.defer();
设置超时(函数(){
d.解决();
}, 时间);
返回 d. 承诺;
}
});
客户:
rpc.timeout(2000).then(function() {
console.log('完成');
});
我编写了一个名为Wildcard API的 RPC 实现,它可以让您做到这一点:
// Node.js server
const { server } = require('@wildcard-api/server');
// We define a `timeout` function on the server
server.timeout = function({seconds}) {
await sleep({seconds});
};
function sleep({seconds}) {
return new Promise(resolve => setTimeout(resolve, seconds * 1000));
}
Run Code Online (Sandbox Code Playgroud)
// Browser
import { server } from '@wildcard-api/client';
(async () => {
// Wildcard makes our `timeout` function available in the browser
await server.timeout({seconds: 2});
// 2 seconds later...
console.log('done');
})();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1458 次 |
| 最近记录: |