从Node.js进行REST调用并向浏览器发送响应

我是Node.js的初学者,所以按照项目要求,我试图从Node.js调用REST服务,我从这个SO问题得到了如何调用rest的信息。 这里是代码来rest电话:

var options = { host: url, port: 80, path: '/resource?id=foo&bar=baz', method: 'POST' }; 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); //I want to send this 'chunk' as a response to browser }); }).end(); 

问题是我想发送chunk作为对浏览器的响应,我试过res.write()但它是抛出错误“写入方法未find”。 我在任何地方查看文档,但是他们提供的只是console.log。 任何人都可以让我知道如何发送该数据作为对浏览器的响应?

http.request的callback是一个IncomingMessage的实例,它是一个没有write方法的Readablestream。 使用http.request发出HTTP请求时,无法发送响应。 HTTP是面向请求 – 响应 – 消息的协议。

我怎样才能发送数据作为对浏览器的响应?

为了使浏览器能够得到响应,它必须首先发出请求。 你将不得不有一个运行的服务器,当它收到请求时调用REST服务。

 http.createServer(function(req, res) { var data = getDataFromREST(function(data) { res.write(data); res.end(); }); });