MongoDB代码不想和MongoDB通话

问题描述 投票:0回答:2

我一直在弄乱一些代码,现在只是想学习MEAN Stack,但是我经常被困在两台单独的计算机上。我没有使用YouTube教程,而是使用通常的NodeJS,Express,MongoDB,基本上是MEAN缩写中的所有内容。我飞到准备与数据库建立连接的地步(所以我要执行NPM init,为Express,Mongodb(我相信MongoJS也已经安装并保存了)和ejs)进行安装,然后我去了运行该应用程序只是为了在屏幕上获得一组括号[],而没有其他任何内容。数据库中有内容。我同时使用了本地安装的Mongo和MongoAtlas在线版本,并且都产生了相同的结果。我确实知道出现的问题是,如果我尝试检查Mongo的版本或在命令行中运行它,就好像它不在那儿,但它正在作为服务运行,我有两个版本,两者都有同样的问题,我包含下面的代码。应该注意,只有一台装有MongoCompass的计算机实际上可以访问MongoAtlas,这表明存在防火墙问题,我无法控制其中一台计算机,但是我的应用程序仍应有权访问本地数据库。

var express = require('express');
var router = express.Router();
//import mongojs from 'mongojs';
var mongojs = require('mongojs');
var db = mongojs('mongodb://127.0.0.1:27017/?snappy=disabled&gssapiServiceName=mongodb', ['test']);

router.get('/tasks', function(req, res, next){
    db.tasks.find(function(err, tasks){
        if(err){
            res.send(err);
        }
        res.json(tasks);
    });
});
module.exports = router;

我一直在弄乱一些代码,现在只是想学习MEAN Stack,但是我经常被困在两台单独的计算机上。我正在教教程...

node.js mongodb express mean-stack
2个回答
0
投票

仅获得[]的唯一原因是,您在该集合中没有数据。因此,您必须向该集合中添加新数据,结果将不会像[],但有您的数据。


0
投票

首先,检查您的计算机中是否安装了mongod服务器。

© www.soinside.com 2019 - 2024. All rights reserved.