如何使用节点“http”redirect到目标url

我正在执行下面的代码段,但它不是redirect到实际的页面。

var http = require('http'); var options = { host: 'google.com', port: 80, path: '/search?q=hello+world' }; http.get(options, function(resp){ resp.setEncoding('utf8'); resp.on('data', function(chunk){ //do something with chunk console.log('================\n\n', chunk); }); }).on("error", function(e){ console.log("Got error: " + e.message); }); 

指挥火力:

 node sample.js 

输出:

 ================ <HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> <TITLE>302 Moved</TITLE></HEAD><BODY> <H1>302 Moved</H1> The document has moved <A HREF="http://www.google.co.in/search?q=hello+world&amp;gws_rd=cr&amp;dcr=0&amp;ei=Wd3xWd_nBITovgSl9bXwCA">here</A>. </BODY></HTML> 

我想获得整个页面的HTML但不是这个,而不是我希望你的世界的结果。

尝试把utf8replace为“utf-8”; 与破折号

使用resp.redirect('url'); redirect到所需的页面。

基本上node js是为了create server而开发的,但是很明显它已经到了server side所以它很难在core node js进行应用。你可以尝试至less任何一个frameworks例如expression式 express js .. https:// expressjs。 com /只是通过这个strong & easy & famous框架..如果你不喜欢它然后去另一个

你真正想要的是遵循redirect。 看到这个问题的可能的答案: 你如何遵循Node.js HTTPredirect?