2013-02-22 67 views
0

我正在使用節點捲髮來對WS進行調用。我寫了一個簡單的函數,只是發出一個請求,我正在記錄響應。這是我的server.js的外觀:無法在Nodejs上使用節點捲髮包獲取響應

var http = require('http'); 
var curl = require('node-curl'); 
var config = require('./config'); 

var cfgObj = new config.config(); 
function start(port) { 
    function onRequest(request, response) { 
     console.log("Request received"); 
     var options = { 
      VERBOSE: 1, 
      RAW: 1 
     }; 
     curl.debug = 1; 
     curl.setDefaultOptions(options); 
     curl('www.google.com', function(err) { 
      console.log(this.body); 
     }); 
    } 
    http.createServer(onRequest).listen(port); 
} 

cfgObj.getConfig(null, function(data) { 
    start(data.port); 
}); 

cfgObj只包含端口號。它連接到主機的正確,我甚至得到了HTTP 200 OK響應:

[cURL 1] receive 2242 bytes [cURL 1] receive succeeded.

但最後,它說:

Bus error: 10

這是什麼意思?

控件從不會調用打印this.body的函數。我甚至嘗試使用http請求,但是這給了我「套接字掛斷」錯誤。

我一直無法調試此問題。任何線索?

回答

3

node-curl壞了,當我嘗試使用它在我的Mac,我得到了同樣的錯誤:

[2] 34539 bus error node test.js 

(總線錯誤是,當一個程序試圖寫一個無效的內存位置出現差錯)

這是node-curl的替代品:https://github.com/mikeal/request