Синхронные HTTP-запросы клиента Node.js через определенные промежутки времени

Я новичок в node.js, и я хотел бы написать бота, который извлекает рыночные цены каждые 0,5 с и сохраняет их в массиве. т.е. вызовите что-то вроде следующего, но чтобы все это происходило последовательно каждые 0,5 с:

var events_req = https.request(options, function (res) {
    var body = '';
    res.setEncoding('utf-8');
    res.on('data', function (chunk) {
        body += chunk;
    });
    res.on('end', function () {
        if(p.parse(body)) {
            for (var i in MarketPrices) {
                eyes.inspect(MarketPrices[i]);
            }
        }
    });
});
events_req.write(post_data);
events_req.end();

Как бы я это сделал?

P.S.: Не беспокойтесь о eyes.inspect - это только для целей отладки, чтобы я мог видеть, что происходит.


person user1062524    schedule 23.11.2011    source источник


Ответы (1)


Определите функцию, которая делает то, что вы хотите, и используйте setInterval

function fetch() { .. /* make request here */ }

setInterval( fetch, 500 );
person Teemu Ikonen    schedule 23.11.2011