【发布时间】:2011-10-18 20:22:01
【问题描述】:
我正在创建一个 node.js 模块,它通过 XML-RPC 与程序通信。这个程序的 API 最近在某个版本之后发生了变化。因此,当创建客户端 (createClient) 时,我想询问程序它的版本(通过 XML-RPC)并以此为基础定义我的 API。
这样做的问题是,由于我是异步执行上述操作的,所以在实际使用客户端之前工作可能还没有完成。换句话说:
var client = program.createClient();
client.doSomething();
doSomething() 将失败,因为尚未设置 API 定义,我想是因为程序未返回 HTTP XML-RPC 响应。
有什么方法可以解决这个问题?我希望能够拥有一个名为 client 的变量并使用它,因为稍后我将调用它的方法来获取信息(将通过回调返回)。
【问题讨论】:
标签: asynchronous node.js coffeescript event-driven-design