Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.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
Node.js NodeJS请求如何保存Body_Node.js_Request - Fatal编程技术网

Node.js NodeJS请求如何保存Body

Node.js NodeJS请求如何保存Body,node.js,request,Node.js,Request,所以我对Request和NodeJS有问题,很简单,但我不是专家 代码: logged: function () { var request = require('request'); test = "nothing!"; request('http://localhost:8080/log', function (error, response, body){ console.log('error:', error); console.log('statusCode:', response

所以我对Request和NodeJS有问题,很简单,但我不是专家

代码:

logged: function () {
var request = require('request');
test = "nothing!";

request('http://localhost:8080/log', function (error, response, body){
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
console.log('body:', body);
test = body;
});


console.log('test', test);
输出:

Starting .../
test: nothing!
error: null
statusCode: 200
body: hi

请求是异步的,因此底部的console.log将在为主体分配测试变量之前执行

因此,console.log需要位于request-response函数中

如果以后要在响应函数之外使用主体,则取决于您计划如何使用它。

答案如下: 请求是一个异步调用

解决方案并不漂亮,但它是可行的

setTimeout(function() { console.log('test', test);}, 3000);

可能重复感谢阿里夫·汗!这就是答案