【问题标题】:Nodejs get request, body into variableNodejs获取请求,正文成变量
【发布时间】:2019-11-29 00:01:14
【问题描述】:

我试图将正文内容放入变量中,但它显示为 0。 这里哪里错了? :|

    var utc = 0;

    request.get('http://localhost/actions.php?utc',function(err,response,body) {

        utc = body;

    });

    console.log(utc);

【问题讨论】:

  • 试试把console.log移到request.get里面的回调函数吗?

标签: node.js get request


【解决方案1】:

您的日志语句在请求调用的回调之前执行。尝试在分配之后将 log 语句放入回调中。

【讨论】:

  • 谢谢。 :) 顺便说一句,当我在函数中输入“err,data,body”参数时,我可以获得正文内容,但只输入“body”时不能。你知道为什么吗?
  • 因为这与如何命名参数无关。回调以固定顺序获取其参数,因此第一个参数始终是错误的。即使您在代码中将其称为主体(您所做的,删除错误和响应时),它仍然是未定义的。因此,当您的请求一切正常时,您的函数将被调用并将主体作为第三个参数传递。
  • 我明白,但请求函数在一个包含相同参数(响应)的函数中,我从(等 response.userID)获取数据。因此,当我应用任何请求时,第一个响应参数会失去其功能,除了更改所有其他“响应”参数之外,我该如何解决这个问题?
  • 我猜,如果我清楚地理解您的问题,您可以将其中任何一个重命名为“res”或其他任何内容
  • 是的,你做到了,对不起我的英语。我只是理解“因为这与您如何命名参数无关。”在问我最后一个问题之前。 :) 感谢您提供有用的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-20
  • 1970-01-01
  • 1970-01-01
  • 2018-06-07
  • 1970-01-01
  • 2021-10-01
  • 1970-01-01
相关资源
最近更新 更多