2011-04-13 112 views
5

node.js http请求在我的机器上不断失败。我不知道发生了什么事。我正在运行这个死简单的脚本:Node.js http请求不起作用

var http = require("http"); 

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

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); 
    }); 
}); 
req.end(); 

该请求永远挂断。我遇到了0.4.5节点的这个问题,我之前用了0.4.2。它有严重的暗示,就像npm根本不工作。我在2010 Mac Book Pro 15上运行节点“,并且拥有10.6.7的操作系统,就像连接在同一个wifi路由器上的2个同事一样。任何人都知道发生了什么事情?任何与任何其他应用程序发生冲突的机会或服务在我的机器上运行.. 关注

+0

你的意思是用挂?你的意思是,当你把代码放到节点REPL,它与文字结束了,不会回到REPL? – laidback 2012-06-29 20:10:04

+0

尝试unirest!(VAR Request = unirest.get(''); – 2014-08-24 20:11:54

回答

1

您的脚本适用于我,所以我不知道为什么它挂着你...但是,如何创建一个客户端对象像这样...?也许它将帮助?

var http = require('http'); 
var google = http.createClient(80, 'www.google.com'); 
var request = google.request('GET', '/', {'host': 'www.google.com'}); 
request.on('response', function(response) { 
     console.log('STATUS: ' + response.statusCode); 
     console.log('HEADERS: ' + JSON.stringify(response.headers)); 
     response.setEncoding('utf8'); 
     response.on('data', function(chunk) { 
       console.log('BODY: ' + chunk); 
     }); 
}); 
request.end(); 
+0

btw,我在0.4.2 – sonicwizard 2011-04-13 12:36:38

+0

这没有帮助,对不起 – rpechayr 2011-05-02 09:33:00