Node.js 如何等待请求响应并返回值?

Node.js 如何等待请求响应并返回值?,node.js,npm,npm-request,Node.js,Npm,Npm Request,当我在node.js服务器中使用请求模块时,我遇到了一些问题,例如等待和返回 我希望在requestController处接收“responseObject”值 为了解决这个问题,我已经找到了最好的方法,但是我仍然没有找到 如何解决这个问题 提前感谢!!:) ========================================================================= var requestToServer = require('request'); fun

当我在node.js服务器中使用请求模块时,我遇到了一些问题,例如等待和返回

我希望在requestController处接收“responseObject”值

为了解决这个问题,我已经找到了最好的方法,但是我仍然没有找到

如何解决这个问题

提前感谢!!:)

=========================================================================

var requestToServer = require('request');

function getRequest(requestObject) {

    var urlInformation = requestObject['urlInformation'];
    var headerInformation = requestObject['headerInformation'];

    var jsonObject  = new Object( );

    // Creating the dynamic body set
    for(var i = 0; i < headerInformation.length; i++)
        jsonObject[headerInformation[i]['headerName']] = headerInformation[i]['headerValue'];

    requestToServer({
        url : urlInformation,
        method : 'GET',
        headers : jsonObject
    }, function(error, response ,body) {
        // todo response controlling
        var responseObject = response.headers;
        responseObject.body = body;
    });
}

// Controlling the submitted request
exports.requestController = function(requestObject) {
    var method = requestObject['methodInformation'];
    var resultObject = null;

    // Selecting the method
    if(method == "GET")
        resultObject = getRequest(requestObject);
    else if(method =="POST")
        resultObject = postRequest(requestObject);
    else if(method == "PUT")
        resultObject = putRequest(requestObject);
    else if(method == "DELETE")
        resultObject = deleteRequest(requestObject);

    console.log(JSON.stringify(resultObject));
}
var requestToServer=require('request');
函数getRequest(requestObject){
var urlInformation=requestObject['urlInformation'];
var headerInformation=requestObject['headerInformation'];
var jsonObject=新对象();
//创建动态实体集
对于(变量i=0;i
您可以通过以下方式使用
回调

function getRequest(requestObject, callback) {
    // some code
    requestToServer({
       url : urlInformation,
       method : 'GET',
       headers : jsonObject
    }, function(error, response ,body) {
       // todo response controlling
       var responseObject = response.headers;
       responseObject.body = body;
       callback(responseObject);
    }); 
}


希望有帮助。

看起来您需要使用,您可以使用回调。
// Controlling the submitted request
exports.requestController = function(requestObject) {
   var method = requestObject['methodInformation'];

   // Selecting the method
   if(method == "GET")
      getRequest(requestObject, function(resultObject){
          console.log(JSON.stringify(resultObject));
      });

   //some code
}