似乎无法在NodeJS上使用MongoDB登录

时间:2019-02-21 16:18:39

标签: javascript node.js mongodb express

尝试设置一个带有express和node的简单Web服务器,该服务器的登录系统带有mongo数据库。

Index.js

const express = require('express')
const path = require('path')
const PORT = process.env.PORT || 5000
const myDB = require('./db');

express()
  .use(express.static(path.join(__dirname, 'public')))
  .set('views', path.join(__dirname, 'views'))
  .set('view engine', 'ejs')
  .get('/', (req, res) => res.render('pages/index'))
  .listen(PORT, () => console.log(`Listening on ${ PORT }`))


console.log("Returned: " + myDB.logIn("admin", "foo"));

db.js

const assert = require('assert');
const cypto = require('crypto');
const MongoClient = require('mongodb').MongoClient;

// Connection URL
const url = 'mongodb://userFoo:foo#@DSFOO.mlab.com:41605';
const dbName = 'heroku_jtq8fzbr';


module.exports = {

  dbConnect : function () {


},

logIn: function (muser, mpass) {

  const client = new MongoClient(url);
  client.connect(function(err) {
    assert.equal(null, err);
    console.log('Connected');
    const db = client.db(dbName);

    if(db.collection('users').find({ user: muser, password: mpass}) == null) {
      client.close();
      return 0;
    } else {
      client.close();
      return muser;
    }
  });


},
}

尽管我已经在index.js和db.js中为用户名/登录名详细信息输入了所有内容,但当前每当我运行它时(使用正确的用户名/登录名/ URL作为我的mLab服务器)都会打印出详细信息“返回:未定义”。如何修复它才能正确“登录”?

0 个答案:

没有答案