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

执行users.insertOne()时缓冲超时10000ms,注册仍失败的问题求助

执行users.insertOne()时缓冲超时10000ms,注册仍失败的问题求助

各位大佬好,我最近做用户注册功能的时候卡壳了,每次调用注册接口都会报缓冲超时10000ms的错误,注册流程完全走不通,实在找不到问题所在,麻烦帮忙看看!

先给大家说下报错情况:网站端返回500服务器错误,控制台具体提示MongoServerSelectionError: Server selection timed out after 10000 ms,应该是和MongoDB交互的时候出了问题。

这是我后端的authController.js文件里的注册逻辑代码:

const User = require('../models/User');    
const bcrypt = require('bcryptjs');    
const jwt = require('jsonwebtoken');        

exports.register = async (req,res) => {      
  try {        
    const {username, email, password} = req.body;

    // 检查用户是否已存在
    const existingUser = await User.findOne({ email });
    if (existingUser) {
      return res.status(400).json({ message: '该邮箱已注册过账号' });
    }

    // 加密用户密码
    const salt = await bcrypt.genSalt(10);
    const hashedPassword = await bcrypt.hash(password, salt);

    // 创建新用户实例
    const newUser = new User({
      username,
      email,
      password: hashedPassword
    });

    // 保存到数据库(这里应该就是触发超时的环节)
    await newUser.save();

    // 生成JWT返回给前端
    const token = jwt.sign(
      { id: newUser._id },
      process.env.JWT_SECRET,
      { expiresIn: '30d' }
    );

    res.status(201).json({
      _id: newUser._id,
      username: newUser.username,
      email: newUser.email,
      token
    });
  } catch (error) {
    console.error(error);
    res.status(500).json({ message: '服务器错误,注册失败' });
  }
};

我已经排查过的点:

  • 本地MongoDB服务是正常运行的
  • 数据库连接字符串配置看起来没问题
  • 前端传参的格式也核对过,是正确的

有没有大佬能帮忙分析下,到底是哪里出了问题?比如是不是数据库连接的配置遗漏了什么,还是代码里的异步操作有问题?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 13:13:14