5 Stimmen

Node.js http-Anfragen funktionieren nicht

Node.js http-Anfragen schlagen auf meinem Rechner ständig fehl. Ich habe keine Ahnung, was los ist. Ich führe dieses absolut einfache Skript aus:

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();

Die Anfrage bleibt ewig hängen. Ich habe dieses Problem mit Node 0.4.5, ich hatte es vorher mit 0.4.2. Es hat schwerwiegende Auswirkungen, wie z.B. dass npm überhaupt nicht funktioniert. Ich verwende Node auf einem 2010er Mac Book Pro 15" und habe OS 10.6.7, genau wie 2 Kollegen, die mit demselben WLAN-Router verbunden sind. Hat jemand eine Idee, was hier los ist? Besteht die Möglichkeit, dass es einen Konflikt mit einer anderen Anwendung oder einem Dienst gibt, der auf meinem Rechner läuft? Mit freundlichen Grüßen

1voto

sonicwizard Punkte 166

Ihr Skript funktioniert bei mir, also bin ich mir nicht sicher, warum es bei Ihnen hängt... aber wie wäre es, wenn Sie ein Client-Objekt wie dieses erstellen...? Vielleicht würde das helfen?

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();

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X