MLabでホストしているデータベースに接続しようとしています。 StrongLoopAPIを使用しています。ホストされているデータベースの構成情報をdatasources.jsonファイルとconfig.jsonファイルに配置しましたが、_npm start
_でディレクトリを実行すると、api\node_modules\mongodbにthrow new Error ('double colon in Host identifier';)
が表示されます。\lib\url_parser.js:45。
また、loopback-connecter-mongodbnpmパッケージをインストールするようにしました。
これが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の1つをhttp://0.0.0.0/:808として読み取っていましたが、変更すると修正されましたtohttp://0.0.0.0:808
これがあなたや他の誰かに役立つことを願っています。
私は解決策を持っています!
Ubuntuでセルフホスティングを使用しているときに、settings.jsonを読み込めませんでした。何らかの理由で、空白をすべて削除する必要がありました。
それで、私はついにMeteor Galaxyに移動し、彼らのチュートリアルに従って手紙を読み、あらゆる種類のモンゴエラーを取得します。では、一体何なのか、すべての空白を削除しましょう。
tldr; settings.json全体を1行に配置します
www.skyrooms.ioをチェックして、実行中を確認してください:D
これは通常、RLに関する間違った情報を提供したときに発生します。私の場合、url.com/db_name
の代わりにurl.com
を提供しました
同じエラーが発生し、最終的に解決しました。私の以前のデータソース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"
}
変な文字が含まれていないことを確認してください(例:@#$%^:,/.
)、いくつかあり、そのエラーメッセージが表示されました。パスワードを英数字に変更し、問題なく動作します。