从请求模块,Nodejs获取正文

时间:2017-12-03 12:33:57

标签: javascript node.js rest request

我是Javascript / Node的新手。但是我有一些关于Python,Java和C ++的编程方法。然而。我似乎无法弄清楚变量的范围。 例如,我有一个名为x的变量和一个方法,它通过get请求获取一个特定网站的主体。现在我想将它存储在另一个变量中。

Dependency I use.

我的剧本:

const request = require('request');

var x;

request('http://www.google.com', function(err, res, body) {
  return this.x = body;
});

console.log(x); // Should return the "body" from the request method.

返回:

undefined

1 个答案:

答案 0 :(得分:0)

您只将var x;放在顶部范围内,并在回调内部分配x的内容。那么实际发生的是

  1. 声明变量x
  2. 开始请求谷歌
  3. Console.log(x);仍未定义/ null
  4. 请求到Google的响应应该到达,然后它会将响应正文分配给x。
  5. 您需要了解它是异步的。