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?
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é!
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.
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.
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).
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.
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.