Este es el código de tasks.js que estoy tratando de ejecutar:
/*jslint node:true*/ var express = require('express'); var router = express.Router(); var mongojs = require('mongojs'); var db = mongojs('mongodb://localhost:27017/tasks', ['tasks']); router.get('/tasks', function (req, res, next) { 'use strict'; db.tasks.find(function(err, tasks) { if(err){ res.send(err); } res.json(tasks); }); }); module.exports = router;El código está destinado a consultar y mostrar todo el contenido del archivo json.
Cuando reemplazo la URL de db localhost con esta URL de mLab:
var db = mongojs('mongodb://username:password@ds161008.mlab.com:61008/mytasklist_muhab', ['tasks']);Funciona perfectamente.
Supongo que hay un problema con la cadena. Busqué los estándares de connectionString en los documentos de MongoDB y no pude localizar el problema.
No he asignado ningún nombre de usuario o contraseña a la base de datos local.
Mongod funciona bien y puedo ejecutar comandos en la misma base de datos usando el shell de Mongo sin ningún problema.
De acuerdo con la documentación de mongojs , es posible que no necesite usar mongodb://localhost:27017 como parte de su connectionString para db local puede probar solo con dbName
me gusta:
var db = mongojs('tasks', ['tasks'])o
var db = mongojs('tasks') var mycollection = db.collection('tasks') y verificó su conexión establecida o no mediante el uso de un error o un evento de connect
var db = mongojs('tasks', ['tasks']) db.on('error', function (err) { console.log('database error', err) }) db.on('connect', function () { console.log('database connected') })