上传文件时遇Promise未捕获错误及MongoDB服务器异常求助
问题解决建议
前端报错修复
你遇到的Uncaught (in promise) TypeError : cannot read properties of undefined (reading 'statusText')错误,是因为MongoDB服务器停止后,后端无法返回正常响应,err.response会变成undefined,直接读取statusText就会报错。修改catch代码,增加判断逻辑:
.catch((err) => { console.log(err); // 先判断response是否存在,再获取错误信息 const errorMessage = err.response ? err.response.statusText : '服务器连接失败,请检查后端服务'; setPopup({ open: true, severity: "error", message: errorMessage, }); });
MongoDB服务器停止问题排查(后端新手友好)
针对MongoDB上传时停止的问题,按以下步骤排查:
- 检查MongoDB服务状态:直接在服务器上查看MongoDB进程是否在运行,或者用
mongosh命令尝试连接数据库,确认服务是否真的中断。 - 核对连接配置:检查后端代码里的MongoDB连接字符串,确认地址、端口、数据库名称、认证信息(用户名/密码)都正确。
- 排查后端文件处理逻辑:上传文件时的后端代码,有没有对数据库执行高负载操作(比如一次性插入超大数据),或者未捕获数据库操作的异常,导致服务崩溃连带MongoDB停止。
- 查看日志信息:检查MongoDB的日志文件,以及后端服务的日志,查找服务停止时的报错提示(比如内存不足、磁盘空间满、连接数超限等)。
- 完善后端错误处理:后端连接MongoDB的代码要添加异常捕获逻辑,避免数据库操作报错直接导致整个服务崩溃。
内容的提问来源于stack exchange,提问作者David Mungai
相关产品推荐
相关产品推荐

