You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mongoose连接MongoDB报autoReconnect不支持错误如何解决

问题原因

你使用的是Mongoose 6.x及以上版本,该版本底层依赖的MongoDB Node.js驱动已经正式废弃并移除了autoReconnect配置参数,所以传入该参数会直接触发参数不支持的报错。
*注意:Mongoose 6.x开始默认开启自动重连能力,无需手动配置该参数即可实现连接断开后的自动重连逻辑。

正确修复方案
  • 第一步:直接删除options配置中的autoReconnect: true行即可,无需额外添加替代参数
  • 第二步:如果你需要连接本地MongoDB,将DB_CONNECTION_URL替换为本地数据库地址,默认本地MongoDB地址为mongodb://localhost:27017/WhatsAppDB
  • 第三步(可选优化):调用connectDB函数时添加异常捕获逻辑,避免出现未处理的Promise拒绝警告:
connectDB()
  .then(() => console.log("数据库连接成功"))
  .catch(err => console.error("数据库连接异常:", err))
修复后完整的index.js代码
import mongoose from "mongoose";
    
// 连接本地数据库请取消注释下方地址,注释原云数据库地址
// const DB_CONNECTION_URL = "mongodb://localhost:27017/WhatsAppDB";
const DB_CONNECTION_URL =
  "mongodb+srv://user:<password>@cluster0.cjkjw.mongodb.net/WhatsAppDB?retryWrites=true&w=majority";
    
const connectDB = () => {
    console.log("DB trying to connect on " + new Date());
    const options = {
        keepAlive: 1,
        maxPoolSize: 10,
        useNewUrlParser: true,
        useUnifiedTopology: true,
    };
    return mongoose.connect(DB_CONNECTION_URL, options);
};
    
export default connectDB;

内容的提问来源于stack exchange,提问作者Krishnadev. V

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 02:06:08