Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.js处理来自http请求的响应_Javascript_Ajax_Node.js_Httprequest - Fatal编程技术网

Javascript Node.js处理来自http请求的响应

Javascript Node.js处理来自http请求的响应,javascript,ajax,node.js,httprequest,Javascript,Ajax,Node.js,Httprequest,我有一些代码如下: exports.post = function(request, response) { var httpRequest = require('request'); var uri = "url.."; httpRequest(uri, function(err, responseHeaders, bodyResponse) { var data = JSON.parse(bodyResponse); }); } 我想在httprequest

我有一些代码如下:

exports.post = function(request, response) {

  var httpRequest = require('request');
  var uri = "url..";

  httpRequest(uri, function(err, responseHeaders, bodyResponse) {
    var data = JSON.parse(bodyResponse); 
  });

}
我想在httprequest之外使用数据,但在exports.post函数内部使用数据。
在我看到的所有示例中,每个人都使用body进行日志记录,但我想使用数据。

如果您想加入请求数据,在这种情况下可以使用承诺:

function joinData() {
    var httpRequest = require('request');
    var url1 = 'http://echo.jsontest.com/request/first';
    var url2 = 'http://echo.jsontest.com/request/second';

    var promisedRequest = function (uri) {
        return new Promise(function (resolve, reject) {
            httpRequest(uri, function (err, responseHeaders, bodyResponse) {
                var data = JSON.parse(bodyResponse);
                resolve(data);
            });
        });
    }

    // both requests at the same time
    Promise.all([promisedRequest(url1), promisedRequest(url2)])
        .then(function (responsesArray) {
            console.log(responsesArray);        // <- your responses here
        });
}
函数joinData(){
var httpRequest=require('request');
var url1='1〕http://echo.jsontest.com/request/first';
var url2=http://echo.jsontest.com/request/second';
var promisedRequest=函数(uri){
返回新承诺(功能(解决、拒绝){
httpRequest(uri,函数(err,responseHeaders,bodyResponse){
var data=JSON.parse(bodyResponse);
解析(数据);
});
});
}
//两个请求同时进行
承诺。所有([承诺请求(url1),承诺请求(url2)])
.then(功能(响应阵列){

console.log(responseArray);//不行。
导出.post
函数在数据存在时已经完成。为什么不能使用
httprequest
中的数据?因为我提出了几个请求,然后我想加入数据。。您可能想要一个类似的库。