2013-03-20 13 views
7

Poniżej znajduje się kod dla mojego requestera odpowiedzi HTTP Node.js.getaddrinfo Błąd ENOENT z żądania HTTP na Node.js

Raz skorzystać ze strony internetowej, że wyraźnie znać nie istnieje, komunikat o błędzie będzie zawiadomić mi błąd: getaddrinfo ENOENT

Chcę wiedzieć więcej o tym błędzie. Co to odradza? Jaki jest szczegół błędu? Czy 404 to odrodzi?

var hostNames = ['www.pageefef.com']; 

for (i; i < hostNames.length; i++){ 

    var options = { 
      host: hostNames[i], 
      path: '/' 
    }; 

    (function (i){ 
    http.get(options, function(res) { 

     var obj = {}; 
     obj.url = hostNames[i]; 
     obj.statusCode = res.statusCode; 
     // obj.headers = res.headers; 

     console.log(JSON.stringify(obj, null, 4)); 
    }).on('error',function(e){ 
     console.log("Error: " + hostNames[i] + "\n" + e.message); 
    }); 
    })(i); 
}; 

Odpowiedz

8

Możesz to zrobić, aby uzyskać więcej informacji o błędzie.

.on('error',function(e){ 
    console.log("Error: " + hostNames[i] + "\n" + e.message); 
    console.log(e.stack); 
}); 

Jeśli dasz nieistniejącego url następnie powyżej zwrotów kod:

getaddrinfo ENOTFOUND 
Error: getaddrinfo ENOTFOUND 
    at errnoException (dns.js:37:11) 
    at Object.onanswer [as oncomplete] (dns.js:124:16) 

Błąd zostaje wyrzucony z http.ClientRequest klasie http.request(). Żaden 404 nie wygeneruje tego błędu. Błąd 404 oznacza, że ​​klient mógł komunikować się z serwerem, ale serwer nie mógł znaleźć żądanego elementu. Ten błąd oznacza, że ​​system nazw domen nie znalazł adresu (dns.js jest dla zapytań NAPTR).

+1

Ten szczegółowy raport o błędach był tym, czego szukałem, ale czuję się jak pies, który złapał samochód i nie wiem, co z nim zrobić. Kiedy mam ten błąd, co powinienem zrobić? Ponieważ jest ich wiele, czy powinienem je przeanalizować, czy po prostu usunąć te nieistniejące adresy z mojej listy zeskoków? Błąd – theGreenCabbage

+0

oznacza, że ​​adres URL jest niedostępny, dlatego skontaktuj się z usługodawcą internetowym, jeśli nie jest on zablokowany. W przeciwnym razie usuń adresy URL. – user568109

Powiązane problemy