web-dev-qa-db-ja.com

エラー:「ホスト識別子にダブルコロンがあります」

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
}_

何かアイデアはありますか?

12
sleepy_daze

私はついに問題を解決し、このエラーが発生しました。サーバーのURLの1つをhttp://0.0.0.0/:808として読み取っていましたが、変更すると修正されましたtohttp://0.0.0.0:808

これがあなたや他の誰かに役立つことを願っています。

7
objectively C

私は解決策を持っています!

Ubuntuでセルフホスティングを使用しているときに、settings.jsonを読み込めませんでした。何らかの理由で、空白をすべて削除する必要がありました。

それで、私はついにMeteor Galaxyに移動し、彼らのチュートリアルに従って手紙を読み、あらゆる種類のモンゴエラーを取得します。では、一体何なのか、すべての空白を削除しましょう。

tldr; settings.json全体を1行に配置します

www.skyrooms.ioをチェックして、実行中を確認してください:D

2
Andy

これは通常、RLに関する間違った情報を提供したときに発生します。私の場合、url.com/db_nameの代わりにurl.comを提供しました

2
Abdellah Alaoui

同じエラーが発生し、最終的に解決しました。私の以前のデータソース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
Syakir Rahman

変な文字が含まれていないことを確認してください(例:@#$%^:,/.)、いくつかあり、そのエラーメッセージが表示されました。パスワードを英数字に変更し、問題なく動作します。

0
aluxian