Je suis nouveau sur le noeud et rencontre cette erreur sur un simple tutoriel.
Je suis sur OS X 10.8.2 en train d’essayer cela depuis CodeRunner et le Terminal .J'ai aussi essayé de mettre mon module dans le dossier node_modules
.
Je peux dire que c'est une sorte de problème de connexion mais je ne sais pas pourquoi?
events.js:71
throw arguments[1]; // Unhandled 'error' event
^
Error: connect ECONNREFUSED
at errnoException (net.js:770:11)
at Object.afterConnect [as oncomplete] (net.js:761:19)
app.js:
var makeRequest = require('./make_request');
makeRequest("Here's looking at you, kid");
makeRequest("Hello, this is dog");
make_request.js:
var http = require('http');
var makeRequest = function(message) {
//var message = "Here's looking at you, kid.";
var options = {
Host: 'localhost', port: 8080, path:'/', method: 'POST'
}
var request = http.request(options, function(response) {
response.on('data', function(data) {
console.log(data);
});
});
request.write(message);
request.end();
};
module.exports = makeRequest;
Il est fort probable que vous rencontrez des difficultés avec le noeud node.js lorsque le serveur que vous appelez refuse de se connecter. Essaye ça:
process.on('uncaughtException', function (err) {
console.log(err);
});
Ceci maintient votre serveur en fonctionnement et vous donne également une place pour attacher le débogueur et rechercher un problème plus profond.
J'avais le même problème avec fantôme et heroku.
heroku config:set NODE_ENV=production
résolu!
Vérifiez votre configuration et env que le serveur est en cours d'exécution.
Vous essayez de vous connecter à localhost: 8080 ... un service fonctionne-t-il sur votre localhost et sur ce port? Sinon, la connexion est refusée, ce qui provoque cette erreur. Je suggère de vérifier si quelque chose tourne sur localhost: 8080 en premier.
Lorsque vous exécutez le code ci-dessus, vous devez disposer d'un serveur s'exécutant sur le port 8080, qui renvoie simplement la demande via la réponse. Copiez le code ci-dessous dans un fichier séparé (par exemple, 'server.js') et démarrez ce serveur à l'aide de la commande node (node server.js). Vous pouvez ensuite exécuter séparément le code ci-dessus (nœud app.js) à partir d'une ligne de commande distincte.
var http = require('http');
http.createServer(function(request, response){
//The following code will print out the incoming request text
request.pipe(response);
}).listen(8080, '127.0.0.1');
console.log('Listening on port 8080...');
Si vous êtes sur la pile MEAN (Mongo-Express-AngularJS-Node), lancez d’abord mongod et ce message d’erreur disparaîtra.
Les utilisateurs rencontrent cette erreur lorsque le processus Node.js est toujours en cours d'exécution et qu'ils tentent de redémarrer le serveur. Essaye ça:
ps aux | grep node
Cela va imprimer quelque chose comme:
user 7668 4.3 1.0 42060 10708 pts/1 Sl+ 20:36 0:00 node server
user 7749 0.0 0.0 4384 832 pts/8 S+ 20:37 0:00 grep --color=auto node
Dans ce cas, le processus sera celui avec le pid 7668. Pour le tuer et redémarrer le serveur, exécutez kill -9 7668
.
Vérifiez avec mysql à partir du terminal. Utilisez la commande ci-dessous
mysql-ctl start
Dans mon cas, cela a fonctionné
La même erreur se produit dans localhost, je change juste le port mysql (8080 dans le port localhost mysql 5506) ça marche pour moi.
Le Unhandled 'error' event
fait référence à ne pas fournir de fonction à la demande de transmission des erreurs. Sans cet événement, le processus de noeud se termine par l'erreur au lieu d'échouer normalement et de fournir un retour d'informations réel. Vous pouvez définir l'événement juste avant la ligne request.write
pour intercepter tout problème:
request.on('error', function(err)
{
console.log(err);
});
Plus d'exemples ci-dessous:
https://nodejs.org/api/http.html#http_http_request_options_callback
Exécutez server.js à partir d'une ligne de commande différente et client.js à partir d'une ligne de commande différente