NodeJS http.get退出我的应用程序

时间:2015-04-24 23:03:55

标签: node.js http get

我有一个问题。当我运行此代码来获取图像时,但是某些图像会使此行退出我的程序。我没有得到任何错误,我不知道如何调试问题。

http.get(obj.image.url.split("?")[0], function (getResponse){
    var chunks = [];
    getResponse.on('data', function (chunk){
        chunks.push(chunk);
    }).on('end', function(){
        if(getResponse.statusCode == 200){
            var buffer = Buffer.concat(chunks);
            obj.image = {
                url: obj.image.url,
                width: sizeOf(buffer).width,
                height: sizeOf(buffer).height
            }
            callback(obj);
        }
    });
});

我尝试在该函数的每一步中放置一个console.log,但是在http.get之后没有触发任何内容...

http://static.feber.se/article_images/38/68/15/386815_1280.jpg - 工作 https://tctechcrunch2011.files.wordpress.com/2015/02/crunchweek-4-3.jpg - 失败

2 个答案:

答案 0 :(得分:1)

失败的图片来自HTTPS链接。如果要连接到HTTPS,则应使用正确的NodeJS类。它的用途非常相似。查看文档以获取更多信息:https://nodejs.org/api/https.html#https_https_get_options_callback

答案 1 :(得分:1)

这是因为您必须处理不同的协议http://https://。似乎node.js没有任何内置内容。您可以使用requestneedle等模块。他们将确定使用哪种协议,以及如何处理重定向(如果需要)等。