web-dev-qa-db-fra.com

Erreur: "Deux points doubles dans l'identifiant de l'hôte"

J'essaie de me connecter à une base de données hébergée chez MLab. J'utilise l'API StrongLoop. J'ai placé les informations de configuration de mes bases de données hébergées dans mes fichiers datasources.json et config.json, mais chaque fois que je lance le répertoire avec npm start, j'obtiens throw new Error ('double colon in Host identifier';) à api\node_modules\mongodb\lib\url_parser.js: 45.

J'ai également veillé à installer le paquet loopback-connecter-mongodb npm.

Voici un extrait de datasources.json (sans les détails de la base de données, bien sûr):

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

Voici le fichier 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
}

Vous avez des idées?

11
sleepy_daze

J'ai finalement résolu mon problème résultant de cette erreur. Il lisait l'une des URL de mon serveur sous la formehttp://0.0.0.0/:8080, mais a été corrigé lorsque j'ai changé pourhttp://0.0.0.0::8080

J'espère que cela vous aide ou aide quelqu'un d'autre.

6
objectively C

Cela se produit généralement lorsque vous fournissez des informations erronées sur votre URL . Dans mon cas, j'ai fourni le url.com/db_name au lieu de url.com

2
Abdellah Alaoui

J'ai la solution!

Lors de mes séjours avec auto-hébergement sur Ubuntu, je n’ai pas pu charger mon fichier settings.json. Pour une raison quelconque, j'ai dû supprimer tout espace blanc. 

Alors je passe finalement à Meteor Galaxy, suis leur tutoriel à la lettre et reçois toutes sortes d'erreurs mongo. Alors que diable, permet de supprimer tout l'espace blanc, non?

tldr; Mettez votre setting.json en entier sur une seule ligne

voir www.skyrooms.io pour voir courir: D

1
Andy

J'ai la même erreur et finalement le résoudre. Mon source de données précédente json:

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

Ensuite, j'ai rempli la valeur de l'URL comme ceci:

"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

Assurez-vous de ne pas avoir de caractères étranges (par exemple, @#$%^:,/.), j'en ai eu et j'ai reçu ce message d'erreur. Changé le mot de passe à un alphanumérique et fonctionne parfaitement.

0
aluxian