与mongoDB的连接

时间:2018-07-12 06:18:47

标签: node.js mongodb

我是nodeJS和mongodb中的新手。我无法将代码与mongodb连接。这是我的代码。当我运行此代码时,它就给我了

  

(节点:9160)DeprecationWarning:当前URL字符串解析器为   已过时,将在以后的版本中删除。使用新的   解析器,将选项{ useNewUrlParser: true }传递给MongoClient.connect

我该如何解决?

var express = require("express");
    var mongoose = require("mongoose");
    var passport = require("passport");
    var bodyParser = require("body-parser");
    var LocalStrategy = require("passport-local");
    var passportLocalMongoose = require("passport-local-mongoose");

    mongoose.connect("mongodb://localhost/mydb");

    // mongoose.connect("mongodb://localhost:27017/mydb_login", { useNewUrlParser: true })
    var app = express();

    app.set("view engine", "ejs");

5 个答案:

答案 0 :(得分:1)

尝试一下,我认为它将为您提供帮助。

let MONGOOSE = require('mongoose');    
MONGOOSE.connect('mongodb://127.0.0.1:27017/demo', (err, response)=>{
                if(err)
                    reject(err);
                else
                    resolve(null);
            });    

答案 1 :(得分:0)

我建议替换您的声明

mongoose.connect("mongodb://localhost/mydb");

具有以下类型之一:

mongoose.connect(uri)
.then(
    () => { 
      console.log("Connected");
    },
    err => {
      console.log(err); 
    }
);

这将帮助您了解是否已建立连接,以及是否未建立连接,相应的错误是什么。

答案 2 :(得分:0)

just add {useNewUrlParser: true} to the connection options object

mongoose.connect("mongodb://localhost/mydb", { useNewUrlParser: true });

this is due to a new parser version

答案 3 :(得分:0)

将此代码放在您的布局文件中,而不是在app.js中:

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/yourDatabase', { useNewUrlParser: true });
var Schema = mongoose.Schema;

然后,您可以创建Schema布局,例如:

var mySchema = new Schema({
    first_name: String, 
    last_name: String
});

答案 4 :(得分:0)

100%工作方法跟着我走

  1. 在您的项目中找到 mongoose.connect(db)文件。... 可以在自定义文件夹 server.js
  2. 中找到
  3. mongoose.connect(db)中替换 mongoose.connect(db,{useNewUrlParser:true})
  4. 查看图片enter image description here