[英]port error in node.js Error: connect ECONNREFUSED
我正在嘗試在本地主機上運行應用程序,但不斷出現以下錯誤:
Error: connect ECONNREFUSED
at Object.exports._errnoException (util.js:1022:11)
at exports._exceptionWithHostPort (util.js:1045:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1087:14)
我已經安裝了node.js並執行了cmd命令:npm install和node index。 我究竟做錯了什么? 我的代碼如下對於索引文件:
var config = require('./config');
// ******************* WebSocket server *******************
var wsClients = {};
var WebSocket = require('ws');
var webSocketServer = new WebSocket.Server({ 'host': config.webSocketHost,'port': config.webSocketPort }, function(){
console.log('WebSocket listening '+config.webSocketHost+' on port '+config.webSocketPort+'.');
});
webSocketServer.on('connection', function(cws) {
var id = Math.random();
wsClients[id] = cws;
console.log("New connection " + id);
cws.on('close', function() {
console.log('Connection close ' + id);
delete wsClients[id];
});
cws.on('error', function() {
console.log('Connection error ' + id);
delete wsClients[id];
});
});
webSocketServer.on('message', function(data){
console.log(data);
});
// ******************* Web server *******************
var express = require('express');
var app = express();
app.use(express.static('public'));
app.set('views', './views');
app.set('view engine', 'ejs');
app.disable('x-powered-by');
app.get('/', function (req, res) {
res.render('index');
});
app.use(function(req, res, next) {
res.status(404).send('Sorry cant find that!');
});
app.use(function(err, req, res, next) {
console.error(err.stack);
res.status(500).send('Something broke!');
});
var host = config.webHost || process.env.HOST || "127.0.0.1";
var port = config.webPort || process.env.PORT || 80;
app.listen(port, host, function () {
console.log('WebServer listening '+config.webHost+' on port '+config.webPort+'.');
});
// ******************* Twitter bot *******************
var Twitter = require('twitter');
var client = new Twitter(config);
var stream = client.stream('user');
stream.on('data', function(event, webSocketServer) {
for (var key in wsClients) {
wsClients[key].send(JSON.stringify(event));
}
});
stream.on('error', function(error) {
throw error;
});
ECONNREFUSED
表示“服務器拒絕連接”。 這可能是由於多種原因。
在調試模式下運行服務器,在其上設置一個斷點,然后檢查連接請求是否到達服務器應用程序。
如果連接請求未到達服務器應用程序,請檢查本地防火牆,網絡等。
如果到達服務器應用程序並遇到斷點,請逐步運行,並找出實際上是哪一行代碼關閉了連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.