MongoError:连接ECONNREFUSED

时间:2016-04-25 17:08:32

标签: node.js sockets heroku deployment

为什么我们会收到此错误?

db:error Error: Cannot open store: MongoError: connect ECONNREFUSED 0.0.0.0:27017 

我们正在尝试连接Deployd w/ Heroku并继续收到此错误。关于该怎么做的任何想法?非常感谢!

// require deployd
var deployd = require('deployd');

// configure database etc.
var server = deployd({
  port: process.env.PORT || 5000,
  env: 'production',
  db: {
        host: '0.0.0.0',//my real host name
        port: 27017,
        name: 'app', //my real app name
        credentials: {
            username: process.env.MONGODB_USERNAME,
            password: process.env.MONGODB_PASSWORD
        }
      }
});

// heroku requires these settings for sockets to work
server.sockets.server.set('transports', ["xhr-polling"]);


// start the server
server.listen();

// debug
    server.on('listening', function() {
           console.log("Server is listening on port: " + process.env.PORT);
    });

// Deployd requires this
server.on('error', function(err) {
    console.error(err);
     process.nextTick(function() { 

        // Give the server a chance to return an error
           process.exit();
     });
});

1 个答案:

答案 0 :(得分:1)

错误ECONNREFUSED 0.0.0.0:27017告诉您,您的应用正在尝试连接到端口0.0.0.027017的服务,并且该服务拒绝连接。

0.0.0.0可能错了。它意味着"本地机器上的所有IP地址"在监听环境中使用时。这意味着"到互联网的默认路线"在连接环境中。达成服务都没有意义。

这是否已硬编码到您的应用中?通常,您希望使用环境变量来获取服务端点等内容,并且通常服务不会与您的应用程序存在于同一台计算机上。