Error: "Double colon in host identifer"
Error: "Double colon in host identifer"
我正在尝试连接到我在 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
}
}
这里是 config.json 文件:
{
"restApiRoot": "/api",
"host": "ds047355.mlab.com",
"port": 47355,
"remoting": {
"context": {
"enableHttpContext": false
},
"rest": {
"normalizeHttpPath": false,
"xml": false
},
"json": {
"strict": false,
"limit": "100kb"
},
"urlencoded": {
"extended": true,
"limit": "100kb"
},
"cors": false,
"errorHandler": {
"disableStackTrace": false
}
},
"legacyExplorer": false
}
有什么想法吗?
我终于解决了导致此错误的问题。它正在将我的一个服务器 URL 读取为 http://0.0.0.0/:8080 but was fixed when I changed to http://0.0.0.0:8080
希望这对您或其他人有所帮助。
当您提供有关 URL 的 错误信息时,通常会发生这种情况。就我而言,我提供了 url.com/db_name
而不是 url.com
我有办法!
在 Ubuntu 上自托管期间,我无法加载我的 settings.json。出于某种原因,我不得不从中删除所有白色 space 。
所以我最终转到了 Meteor Galaxy,严格按照他们的教程进行操作,并遇到了各种 mongo 错误。那么到底是什么,让我们删除所有白色 space,对吗?
tldr;将整个 setting.json 放在一行
检查 www.skyrooms.io 以查看 运行 :D
确保其中没有奇怪的字符(例如 @#$%^:,/.
),我有一些但收到了错误消息。将密码更改为字母数字密码并完美运行。
我也遇到了同样的错误,终于解决了。
我以前的数据源 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"
}
我正在尝试连接到我在 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
}
}
这里是 config.json 文件:
{
"restApiRoot": "/api",
"host": "ds047355.mlab.com",
"port": 47355,
"remoting": {
"context": {
"enableHttpContext": false
},
"rest": {
"normalizeHttpPath": false,
"xml": false
},
"json": {
"strict": false,
"limit": "100kb"
},
"urlencoded": {
"extended": true,
"limit": "100kb"
},
"cors": false,
"errorHandler": {
"disableStackTrace": false
}
},
"legacyExplorer": false
}
有什么想法吗?
我终于解决了导致此错误的问题。它正在将我的一个服务器 URL 读取为 http://0.0.0.0/:8080 but was fixed when I changed to http://0.0.0.0:8080
希望这对您或其他人有所帮助。
当您提供有关 URL 的 错误信息时,通常会发生这种情况。就我而言,我提供了 url.com/db_name
而不是 url.com
我有办法!
在 Ubuntu 上自托管期间,我无法加载我的 settings.json。出于某种原因,我不得不从中删除所有白色 space 。
所以我最终转到了 Meteor Galaxy,严格按照他们的教程进行操作,并遇到了各种 mongo 错误。那么到底是什么,让我们删除所有白色 space,对吗?
tldr;将整个 setting.json 放在一行
检查 www.skyrooms.io 以查看 运行 :D
确保其中没有奇怪的字符(例如 @#$%^:,/.
),我有一些但收到了错误消息。将密码更改为字母数字密码并完美运行。
我也遇到了同样的错误,终于解决了。 我以前的数据源 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"
}