【发布时间】:2022-02-04 21:14:05
【问题描述】:
我正忙于创建一个项目,该项目允许用户输入“电子邮件”和“密码”来注册网站,
当我尝试使用“电子邮件”和“密码”输入用户进入此站点时,我收到以下错误:
MongooseError: 操作 users.insertOne() 缓冲超时后 10000毫秒
未处理的拒绝 MongooseError:操作 users.findOne() 缓冲 10000ms 后超时
我已经尝试了我在此处找到的所有建议的解决方案,但存在类似问题,请删除 node_modules 文件夹并重新安装 mongoose。
请看下面我的代码,谢谢!
const express = require("express");
const bodyParser = require("body-parser");
const ejs = require("ejs");
const mongoose = require("mongoose");
const app = express();
app.use(express.static("public"));
app.set('view engine', 'ejs');
app.use( bodyParser.urlencoded ({extended: true}));
mongoose.connect = ("mongodb://localhost:27017/userDB", {useNewUrlParser: true, useUnifiedTopology: true});
const userSchema = {
email: String,
password: String
};
const User = new mongoose.model("User", userSchema);
app.get("/", function(req, res){
res.render("home")
});
app.get("/login", function(req, res){
res.render("login")
});
app.get("/register", function(req, res){
res.render("register")
});
app.post("/register", function(req, res){
const newUser = new User({
email: req.body.username,
password: req.body.password
});
newUser.save(function(err){
if (err) {
console.log(err);
} else {
res.render("secrets");
}
});
});
谁能帮帮我?
【问题讨论】:
-
请提供控制器代码
-
请看上面的代码,我似乎没有看到我的错误在哪里。谢谢
-
用你自己的话说,
mongoose.connect = (...)行在做什么? -
我希望我有这个正确和清楚的,但是 mongoose.connect = (...),应该怎么做是连接到我的本地主机服务器?但是当我在端口 3000 上启动服务器并导航到注册屏幕时,插入所需的详细信息,我收到错误:MongooseError: Operation users.insertOne() buffering timed out after 10000ms Unhandled reject MongooseError: Operation users.findOne() buffering 10000 毫秒后超时
-
您的互联网连接可能不够强,无法启动和保持数据库连接。这是我的经验。
标签: javascript node.js mongodb mongoose