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

运行nodemon index.js遇Slash in host identifier错误,求解决方案

搞定「UnhandledPromiseRejectionWarning Error: Slash in host identifier」错误

嘿,我来帮你理清楚这个问题!

错误原因解释

这个报错本质是MongoDB连接字符串格式完全写错了!MongoDB的本地连接URL正确格式是:

mongodb://[主机地址]:[端口号]/[数据库名称]

你现在写的是 mongodb://localhost:apiAuth —— 冒号:后面本该填数字类型的端口号(MongoDB默认端口是27017),但你直接把数据库名apiAuth放在了这里。驱动程序尝试解析这个字符串时,把apiAuth当成了端口号处理,发现它不是合法的数字端口,进而触发了格式解析错误,就抛出了这个“主机标识符里有斜杠”的警告(本质是格式不匹配导致的解析失败)。

解决方法

只需要修正连接字符串的格式就行,分两种情况:

  • 如果你的MongoDB用的是默认端口27017,可以直接省略端口号,写成:
    mongoose.connect('mongodb://localhost/apiAuth');
    
  • 如果你的MongoDB修改过端口(比如改成了27018),就明确写上端口:
    mongoose.connect('mongodb://localhost:27018/apiAuth');
    

另外,为了避免后续可能出现的其他警告,推荐加上连接配置项,同时用then/catch捕获连接状态:

mongoose.connect('mongodb://localhost/apiAuth', {
  useNewUrlParser: true,
  useUnifiedTopology: true
})
.then(() => console.log('MongoDB 连接成功!'))
.catch(err => console.error('连接失败:', err));

把你原来代码里的mongoose.connect('mongodb://localhost:apiAuth')替换成上面的正确写法,再重新运行nodemon index.js,这个错误就应该消失啦!

内容的提问来源于stack exchange,提问作者Markus Hayner

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:13:28