问题 错误:“主机标识符中的双冒号”


我正在尝试连接到我在MLab托管的数据库。我正在使用StrongLoop API。我已将托管数据库的配置信息放入我的datasources.json和config.json文件中,但每当我运行目录时 npm start我明白了 throw new Error ('double colon in host identifier';) 在api \ node_modules \ mongodb \ lib \ url_parser.js:45。

我还确保安装loopback-connecter-mongodb npm包。

这是一个片段 datasources.json (当然没有实际的数据库细节):

{
  "db": {
    "name": "db",
    "connector": "mongodb",
    "host": "ds047355.mlab.com",
    "database": "dbtest",
    "username": "user",
    "password": "fakepassword",
    "port": 47355
  }
}

5926
2018-03-24 17:44


起源

你有主机和端口 config.json 作为数据源,这不是他们的地方。配置应包括您希望环回运行节点服务器的主机和端口,本地可以是 0.0.0.0:3000 - Rabea
谢谢你的帮助Rabee!我把主机添加为 0.0.0.0 在 config.json 并将端口添加为 3000,但我仍然得到同样的错误...... - sleepy_daze
它也可能是你使用的时候 : 要么 / 在你的mongodb密码 - Raj Adroit


答案:


我终于解决了我的问题导致了这个错误。它正在读取我的一个服务器URL http://0.0.0.0/:8080 但是当我换到时修复了 http://0.0.0.0:8080

希望这可以帮助你或其他人。


6
2018-06-15 14:33



如果你连接到mlab怎么办? - Ruyonga Dan


它通常在您提供时发生 有关您的网址的错误信息。就我而言,我提供了 url.com/db_name 代替 url.com


2
2018-02-04 09:53





我有解决方案!

在我在Ubuntu上自托管的时候,我无法加载我的settings.json。出于某种原因,我不得不从中移除所有空白区域。

所以我最终转移到流星银河,按照他们的教程写信,并得到各种mongo错误。那么什么,让我们删除所有的空白,对吧?

tldr;将整个setting.json放在一行上

检查www.skyrooms.io看跑步:D


1
2018-03-02 20:21





我得到了同样的错误,最后解决了。 我的previuos数据源json:

"db": {
   "host": "mongodb://127.0.0.1",
   "port": 27017,
   "url": "",
   "database": "dbname",
   "password": "12345",
   "name": "db",
   "user": "admin",
   "connector": "mongodb"
}

然后,我填充url值,如下所示:

"db": {
   "host": "mongodb://127.0.0.1",
   "port": 27017,
   "url": "mongodb://127.0.0.1:27017/dbname",
   "database": "dbname",
   "password": "12345",
   "name": "db",
   "user": "admin",
   "connector": "mongodb"
}

1
2017-10-18 13:10





确保你没有奇怪的字符(例如 @#$%^:,/.),我有一些并得到了错误信息。将密码更改为字母数字密码并完美运行。


0
2017-08-18 17:56