Вам нужно вызвать end () по запросу, чтобы сообщить, что вы готовы его отправить. Также вы должны добавить заголовок user-agent к вашему запросу. Многие веб-серверы ищут это.

ользую node.js для загрузки веб-страницы. Тем не менее, он не получает никаких данных:

    console.log('preparing request to ' + url)
    u = require('url').parse(url)
    var remote_client = http.createClient(80, u['host']);
    var request = remote_client.request("GET", u['pathname'], {"host": u['host']});
    console.log("request made")

    request.addListener('response', function (response) {
        response.setEncoding('binary') 
        var body = '';

        response.addListener('data', function (chunk) {
            body += chunk;
            console.log('chunk received')
        });
    });

Последнее консольное сообщение «запрос сделан». Нет консольных сообщений с "полученным чанком" или чем-то подобным. Мысли?

 Alfred26 янв. 2011 г., 12:43
Да, вы забыли request.end (), но я бы использовал обертку вокруг этой простой библиотеки. Видетьgithub.com/ry/node/wiki/modules => Напримерзапрос, Узел-wwwdude чтобы назвать только несколько.
 generalhenry26 янв. 2011 г., 01:32
Вы также можете просто переключиться на использование http.get ()nodejs.org/docs/v0.3.6/api/http.html#http.get
 generalhenry26 янв. 2011 г., 01:29
Вы забыли request.end ()
 Jalpesh Patel25 окт. 2012 г., 16:06
Привет, друг, мне нужна помощь. Как мне загрузить файл node.js?

Ответы на вопрос(1)

Это пример, который всегда работал для меня:

var sys = require('sys'),
    http = require('http');

var connection = http.createClient(8080, 'localhost'),
    request = connection.request('/');

connection.addListener('error', function(connectionException){
    sys.log(connectionException);
});

request.addListener('response', function(response){
    var data = '';

    response.addListener('data', function(chunk){ 
        data += chunk; 
    });
    response.addListener('end', function(){
        // Do something with data.
    });
});

request.end();
 Advanced26 мар. 2013 г., 01:38
устарел http.createClient с 0.10

Ваш ответ на вопрос