0

我正在尝试通过猫鼬连接到我的数据库,如下所示:

mongoose
  .connect(process.env.COSMOSDB_CONNSTR, {
    useNewUrlParser: true,
    auth: {
      user: process.env.COSMODDB_USER,
      password: process.env.COSMOSDB_PASSWORD
    }
  })
  .then(() => console.log("Connection to CosmosDB successful"))
  .catch(err => console.error(err));

我收到一条错误消息:

MongoError:数据库名称必须是字符串

现在,如果我删除useNewUrlParser: true, 我得到:

错误:密码包含非法的未转义字符

我显然不想删除 useNewURLParser,但我认为这很奇怪。

COSMOSDB_CONNSTR=mongodb://jedi:iamajediawhatareyou==@jedidb.documents.azure.com:10255/?ssl=true&replicaSet=globaldb
COSMODDB_USER=jediidb
COSMOSDB_PASSWORD=iamajediawhatareyou==
4

1 回答 1

0

所以我正在阅读他们的文档,一个地方显示你需要在前面的 dbname ?ssl=true

所以调整字符串它实际上看起来像这样。

COSMOSDB_CONNSTR=mongodb://jedi:iamajediawhatareyou==@jedidb.documents.azure.com:10255/jedi?ssl=true
于 2019-02-18T01:17:13.010 回答