Node.js future.wait()要等多久?

Node.js future.wait()要等多久?,node.js,meteor,error-handling,try-catch,future,Node.js,Meteor,Error Handling,Try Catch,Future,我在meteor应用程序中需要npm future软件包 如果服务提供商服务器不响应http调用,我该怎么办 A.未来将等待多长时间的响应 B.(如果它真的一直等待)如何在4秒后停止等待并在向用户返回错误之前再重复api调用3次 Server.js var requestFunction = function(callback) { var f = new future() request.post('www.example.com/oauth/request', { oaut

我在meteor应用程序中需要npm future软件包

如果服务提供商服务器不响应http调用,我该怎么办

A.未来将等待多长时间的响应

B.(如果它真的一直等待)如何在4秒后停止等待并在向用户返回错误之前再重复api调用3次

Server.js

 var requestFunction = function(callback) {
  var f = new future()
  request.post('www.example.com/oauth/request', {
    oauth: {key: 'somekey'},  
      function ResponseFUnction(error, response, body) {    
      if (!err && response.statusCode === 200) {
          var reqBody = querystring.parse(body)
          var responseObj = {
                            oauth_token:reqBody.oauth_token,
                            authenticateUrl: 'www.example.com/oauth/authorize?' + qs.stringify({token: reqBody.oauth_token})
                          }
          return f.return(responseObj)
      }
      else {
        return f.return(error);
      }
    })
  return f.wait()
};

var storeResponseObj = function(data) {
    var store = Meteor.users.update(Meteor.user(), {$set: {'profile.responseFolder': data}})
  return
}


Meteor.methods({
ApiTokens: function() {
try {
      var functionOne =  requestFunction()
      var functionTwo =  storeResponseObj(functionOne)
    } catch (error) { console.log(error) }
    return
  } 
})