2012-06-19 35 views
0

我的問題實際上是我在調用回調之前使用了響應主體,導致出現錯誤,因此回調從未被調用過。模塊中的Node.js回調從未被調用

我正在使用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(); 

該回調似乎沒有被調用過。

回答

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) 
    } 
});