2011-10-06 6 views
0

웹 사이트에서 API를 호출하고 JSON 결과를 인쇄하려고합니다. 하지만 결과를 볼 수 없습니다. 이 문제를 파악하기위한 모든 생각. 감사합니다.JSON 출력을 출력하는 방법

var http = require('http'); 
var data_info=""; 

    http.createServer(function (req, res) { 
    sendJsontoAlchemy(outputMode()); 
    res.writeHead(200, {'Content-Type': 'text/plain'}); 
    res.end('end\n'); 
}).listen(1111) 
console.log('Server is on'); 

function sendJsontoAlchemy() 
{ 
    requestNumber = JSONRequest.post(
    "http://access.alchemyapi.com/calls/text/TextGetCategory", 
    { 
       apikey: "aaaaaa", 
       text : "Skateboard Mens Trousers t Shirt Wooden Fence", 
       outputMode : json, 
       jsonp:outputMode//call back function. 
    }, 
    function (requestNumber, value, exception) { 
     if (value) { 
      processResponse(value); 
     } else { 
      processError(exception); 
     } 
    }); 
} 

function outputMode(response) 
{ 
    console.log("the result is =>");  
    console.log(JSON.stringify(response)); 
} 
+0

'res'를'outputMode()'에 전달해야합니다. 또한주기적인 오류를 피하기 위해'require ('util'). inspect (response)'를 사용하십시오. –

답변

0

매우 유용한 모듈 request을 사용하는 것이 좋습니다.

예제 코드 :.

당신이 출력은 요청 ({OPTS을}) 할 수있는 서버에서 일을해야하는 경우
var request = require('request'); 

request({ 
    method: 'POST', 
    uri: 'http://access.alchemyapi.com/calls/text/TextGetCategory', 
    body: 'apikey=1337abcd'+ 
      '&text=Skateboard Mens Trousers t Shirt Wooden Fence' + 
      '&outputMode=json', 
}, function(err, res, body){ 
    result = JSON.parse(body); 
    console.log('Category: ', result.language); 
    console.log('Category: ', result.category); 
}); 

파이프 (응답) 대신 콜백을 지정하는 서버 내부.

var http = require('http'); 
var request = require('request'); 

http.createServer(function(req, res){ 
    request({ 
     method: 'POST', 
     uri: 'http://access.alchemyapi.com/calls/text/TextGetCategory', 
     body: 'apikey=1d416bcdde7cf8a360fad31701ac2c2ba57bc75f'+ 
       '&text=Skateboard Mens Trousers t Shirt Wooden Fence' + 
       '&outputMode=json', 
    }).pipe(res); 
}).listen(1111); 
관련 문제