【问题标题】:Node.js callbacks in module are never called模块中的 Node.js 回调永远不会被调用
【发布时间】:2012-06-20 03:44:49
【问题描述】:

我的问题实际上是我在调用回调之前使用了响应正文,这导致了错误,因此从未调用过回调。

我正在使用request module,虽然这个问题似乎发生在任何回调中。

如果我做这样的事情。

var request = require('request');

module.exports.test = function ()
{
    request('http://www.google.com', function (error, response, body) {
        /**
         * This callback doesn't seem to ever be called.
         */

        console.log(body);
    });
};

并像使用它一样。

var mytest = require('./test.js');

mytest.test();

回调似乎从未被调用过。

【问题讨论】:

    标签: javascript node.js module callback


    【解决方案1】:

    您的代码正在按预期工作,如果您没有看到任何输出,则表示出现了一些错误,应在传递给您的函数的error 参数中指出。

    var request = require('request');
    request('http://www.google.com', function (error, response, body) {
      if (!error && response.statusCode == 200) {
        console.log(body) // Print the google web page.
      } else {
        console.log('error: '+ response.statusCode)
      }
    });
    

    【讨论】:

      猜你喜欢
      • 2012-02-18
      • 1970-01-01
      • 1970-01-01
      • 2015-07-28
      • 2013-11-23
      • 1970-01-01
      • 1970-01-01
      • 2018-08-08
      • 1970-01-01
      相关资源
      最近更新 更多