如何在函数内部等待异步函数?

时间:2019-07-15 21:02:35

标签: javascript node.js express asynchronous xml-rpc

我正在创建简单的Node.js + Express.js Web应用程序,并且正在连接到XML-RPC服务。我使用库xmlrpc。该函数client.methodCall(m,d,f)具有三个参数:方法,数据和函数。您必须将function指定为第三个参数,该参数将在xmlrpc命令执行后执行(您可以期望此函数有2个参数:error和data)。问题在于,该函数是异步执行的-因此Node不会等到函数从xmlrpc获取数据。但是由于我需要在app.post()函数中呈现这些数据,所以我不知道如何等待它们。

到目前为止,我已经拥有了:

  client.methodCall(
    "someMethod",
    [
      {
        data: inputData,
        something: "something",
        clientIp: "1.2.3.4",
        userAgent: "someAgent",
      },
    ],
    function(error, value) {
      I need to return from here, but it doesnt wait here.
    }
  );
}```

0 个答案:

没有答案