简体   繁体   中英

Node.js unhandled 'error' event

I have written a simple code and save it in file try.js .

var http = require('http');
var makeRequest = function(message) {
  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();
}
makeRequest("Here's looking at you, kid.");

When I run it through terminal it give an error

throw er; // Unhandled 'error' event,
Error: connect ECONNREFUSED
at errnoException (net.js:884:11)
at Object.afterConnect [as oncomplete] (net.js:875:19)error' event

For me, the problem was another instance was running. Search for other node instance running and kill it. It should resume properly after.

This is happening because nothing is listening on localhost:8080. Here are the examples how to handle request errors How to catch http client request exceptions in node.js

Another server is running on same port 8080, so you need to kill and start your instance.

find running instance

$ netstat -nlp | grep 8080

(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp6       0      0 :::8881                 :::*                    LISTEN      28207/node    

kill existing server instance using pid

$ kill -9 28207

start instance

$ node server.js 

change port number. Because your port is already is running.

port number like : 8000,8001,3000,3001,8080 ....

 app.listen(3030,()=>{})

(or) Kill your port number. If you are using Ubuntu OS to follow this steps.

  1. To Find PID or TCP using terminal using this command: sudo netstat -ap | grep :"port number"
  2. To Kill the process using this command: kill -9 "process_id or tcp_id"
  3. To Run your NodeJs

另一台服务器正在同一端口 8080 上运行,因此更改此代码中的端口或终止端口 8080 并重新启动它。

A different process is already running in the same port. Either kill the running process or change the port number in the current code. Your issue will be fixed!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM