运行nodemon --exec npm start报MongoParseError无用户名错误如何解决
解决方法
这个错误由MongoDB连接URI格式解析失败触发,按以下步骤排查:
- 定位项目中MongoDB连接串的配置位置,通常在
.env环境变量文件、项目config配置目录,或是直接写在调用MongoDB连接方法的代码段中 - 核对连接串的格式规范:
- 带身份认证的连接串标准结构:
mongodb://[用户名]:[密码]@[主机地址]:[端口]/[数据库名]?[可选配置项],MongoDB Atlas的SRV连接串同理为mongodb+srv://[用户名]:[密码]@[集群地址]/[数据库名]?[可选配置项] - 无身份认证的连接串标准结构:
mongodb://[主机地址]:[端口]/[数据库名]?[可选配置项]
- 带身份认证的连接串标准结构:
- 重点排查
@符号的使用:@是分隔认证信息和主机地址的标识,如果你的MongoDB没有开启身份认证,必须删掉连接串中多余的@符号;如果开启了认证,要保证@前面完整填写了用户名:密码,不能留空或只填冒号 - 如果你的密码包含
@、:、/、?等URL特殊字符,需要先对密码做URL编码后再填入连接串,避免特殊字符被误判为连接串的分隔符 - 修改配置保存后,重新执行
nodemon --exec npm start即可
内容的提问来源于stack exchange,提问作者LowkeyYeah
相关产品推荐
相关产品推荐

