2013-04-30 2 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); 
}