2013-04-30 3 views
0

Что не так в этом простом примере?Синхронный запрос в node.js с общим узлом

Я сравнил этот код с примерами в других примерах синхронного/запроса, но я не вижу его.

HttpClient = require('common-node').httpclient.HttpClient 
Fiber = require('fibers') 

google = -> 
    Fiber(() -> 
    console.log(new HttpClient({ 
     url: 'http://google.com' 
    }).finish().body.read(null).decodeToString()) 
).run() 

google() 
+0

Что происходит, когда вы запускаете его? – matehat

+0

Пожалуйста, добавьте ошибку на этот вопрос, иначе мы застряли! – TheHippo

ответ

0

Я был немного смущен, почему, когда я зарегистрировал ответ, он был бы усечен. Наконец, я прочитал, что ответ повторяется, и цикл через него, кажется, единственный способ гарантировать, что у вас есть весь ответ.

var jsonResponse = function(json_api_url) { 
    var HttpClient = require('httpclient').HttpClient; 
    var response = new HttpClient({url: json_api_url}).finish(); 
    var bodyString = ''; 
    response.body.forEach(function(stream) { 
     bodyString += stream.decodeToString(); 
    }); 
    return JSON.parse(bodyString); 
} 
Смежные вопросы