web-dev-qa-db-fra.com

MongoError: getaddrinfo ENOTFOUND undefined undefined: 27017

Je travaille donc à ma façon à travers le livre Getting Mean de Manning et en suivant les étapes du chapitre 5, j'essaie d'utiliser une base de données sur Mongolab comme complément à Heroku. Lorsque j'exécute ce code (à la fois localement et sur Heroku), il renvoie cette erreur:

MongoError: getaddrinfo ENOTFOUND undefined undefined: 27017

Voici mon code actuel:

var mongoose = require('mongoose');

var dbURI = "mongodb://localhost/loc8r";
if (process.env.NODE_ENV === 'production') {
    dbURI = process.env.MONGOLAB_URI;
}
mongoose.connect(dbURI);

Dépannage J'ai démarré l'application depuis le terminal avec:

NODE_ENV=production MONGOLAB_URI=/*my mongo uri here*/

avec ça ça marche bien localement. Je ne sais donc pas d'où vient le problème. Des suggestions pour résoudre l'erreur répertoriée?

7
txnnxr

Je ne sais donc pas quelle partie de ce processus a résolu le problème, mais j'ai complètement supprimé/supprimé l'addon mongolab de Heroku. Ensuite, je l'ai ajouté et effectué les mêmes étapes exactes avec le même code et cela a fonctionné!

Merci à tous ceux qui ont aidé!

1
txnnxr

Je pense que vous ne fournissez pas le PORT NO. Requis pour mongoDB.

Veuillez donner la port no.(27017) avec localhost.

Essayez ceci:

var dbURI = "mongodb://127.0.0.1:27017/loc8r";

getaddrinfo ENOTFOUND Signifie que le client n'a pas pu se connecter à l'adresse indiquée. Veuillez essayer avec l'adresse ci-dessus.

J'espère que ça aide.

11
Ravi Shankar Bharti

Vous venez de manquer de spécifier le numéro de port comme indiqué:

  var dbURI = "mongodb://localhost:27017/thenDBname"

Assurez-vous de changer localhost lors de l'hébergement sur le serveur de production.

3
Itguymax

La variable d'environnement Heroku qui est créée pour un module complémentaire mLab s'appelle MONGODB_URI (MONGOLAB_URI peut être une chose héritée).

1
pneumee

La variable d'environnement Heroku qui est créée pour un module complémentaire mLab s'appelle MONGODB_URI (MONGOLAB_URI peut être une chose héritée). (pneumee)

Cela a résolu le problème pour moi.

0
Max Tamtam

Cela semble correct. J'ai déjà vu cette erreur (beaucoup) auparavant. Le "undefined undefined", je crois, fait référence à vos variables d'environnement non définies. Essayez de consigner vos variables d'environnement dans la console pour vous assurer qu'elles sont valides.

0
Adam