(node:11188) UnhandledPromiseRejectionWarning: MongooseError: Operation `users.insertOne()` 缓冲在 10000 毫秒后超时

问题描述

我在 node express 项目中使用了passport-google-oauth20,但在尝试保存在mongoose db 中时出错。

这是我的: Index.js

passport setup

user model

这是我的 console.log:

运行在 3000 上的服务器

连接到数据库

(node:11188) UnhandledPromiseRejectionWarning: MongooseError: Operation users.insertOne() 缓冲在 10000 毫秒后超时

at Timeout.<anonymous> (C:\Users\Admin\Desktop\code-fellows\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:185:20)
at listOnTimeout (internal/timers.js:554:17)
at processtimers (internal/timers.js:497:7)

(node:11188) UnhandledPromiseRejectionWarning:未处理的承诺拒绝。这个错误要么是因为在没有 catch 块的情况下抛出了异步函数,要么是因为拒绝了一个没有用 .catch() 处理过的承诺。要在未处理的承诺拒绝时终止节点进程,请使用 CLI 标志 --unhandled-rejections=strict(请参阅 https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。 (拒绝编号:3) (节点:11188)[DEP0018] 弃用警告:不推荐使用未处理的承诺拒绝。将来,未处理的承诺拒绝将以非零退出代码终止 Node.js 进程。

解决方法

似乎代码不喜欢 mongoose Atlas 密码,它不是 URL 编码的。我将密码更改为 Atlas 的建议密码并编辑了我的 mongoURI,它开始正常工作。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...