无法使用Nodejs上的node curl包获得响应

时间:2013-02-22 05:40:55

标签: node.js

我正在使用node curl来调用WS。我写了一个简单的函数,只发出一个请求,我正在记录响应。这就是我的server.js的样子:

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]收到2242个字节   [cURL 1]收到成功。

但最后,它说:

  

总线错误:10

这是什么意思?

控件从不调用我正在打印this.body的函数。我甚至试过使用http请求,但这给了我“socket hang up”错误。

我无法调试此问题。有线索吗?

1 个答案:

答案 0 :(得分:3)

node-curl已损坏,当我尝试在我的Mac上使用它时出现同样的错误:

[2]    34539 bus error  node test.js

(总线错误是程序尝试写入无效的内存位置时发生的错误)

以下是node-curlhttps://github.com/mikeal/request

的替代品