2011-04-07 2 views
2

아래 코드를 사용하여 외부 URL에서 응답을 얻으려고하지만 행운이 없습니다. 누군가 내가 잘못하고있는 것에 대해 밝히고 도움이 될만한 포인터를 줄 수 있습니까?node.js에 대한 표현식에 .request()가 있습니다.

var express = require('express'), 
       require('events'); 

var app = express.createServer(); 

app.request({ 
    host: "http://ws.audioscrobbler.com", 
    port: 80, 
    method: "GET", 
    path: "/2.0/?method=artist.getsimilar&artist=bandname&api_key=b25b959554ed76058ac220b7b2e0a026" 
}).on('response',function(response) { 
    console.log(response); 
}); 

app.listen(4000); 

답변

3

가능한지 모르겠습니다. 당신은 단지 내장 요청 기능을 사용할 수 있습니다 (this 참조 : 웹 사이트에서

:

var http = require('http'); 

var options = { 
    host: 'www.google.com', 
    port: 80, 
    path: '/upload', 
    method: 'POST' 
}; 

var req = http.request(options, function(res) { 
    console.log('STATUS: ' + res.statusCode); 
    console.log('HEADERS: ' + JSON.stringify(res.headers)); 
    res.setEncoding('utf8'); 
    res.on('data', function (chunk) { 
    console.log('BODY: ' + chunk); 
    }); 
}); 

// write data to request body 
req.write('data\n'); 
req.write('data\n'); 
req.end(); 

그것은 아주 쉽게 그리고 당신은 여전히 ​​기존의 코드를 사용할 수 있습니다 ...

때때로 프레임 워크는 모든 것에 대한 해결책을 가지고 있지 않습니다. 문서는 친구입니다.

+0

이것이 작동하는 것 같지만, 404 응답을 얻습니다. 왜 이것이 일어날 수 있는지 실감하지 못합니까? –

+0

404는 URL이 [HTTP 응답 코드 사양] (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). – tjameson

+0

Google 예제에서도 404가 표시됩니다. –