“未授权____执行命令”,带有mLab + MongoDB ^ 3.0

问题描述 投票:8回答:1

连接时没有问题,但是在insert()上抛出此错误。

var MongoClient = require('mongodb').MongoClient;
const assert = require('assert');
var url = 'mongodb://____:[email protected]:25565/heroku_w268n9pj';

MongoClient.connect(url, function(err, client) {
    assert.equal(null, err);
    db = client.db('temp');
    console.log("connected!");
    const collection = db.collection('temp');
    collection.insert([{
        something: please
    }
});

我还看到了有关mLab帐户和凭据的其他答案,但是我刚刚为此创建了一个新的管理员帐户。令人沮丧的,因为它以前在v2.3上可以使用。

mongodb npm mlab
1个回答
0
投票

[尝试连接到mlab数据库时,必须正确指定客户端。它位于连接字符串的末尾,紧跟在最后的正斜杠之后。

mlab_url = "mongodb://db_user_name:[email protected]:39725/heroku_sd1fp182?retryWrites=false"
client = MongoClient(url)


db = client["heroku_sd1fp182"]
collection = db["coinHack"]

您可能还会收到错误:

此MongoDB部署不支持可重试的写入。请在您的连接字符串中添加retryWrites = false。

只需将“?retryWrites = false”添加到您的连接字符串中,如上所示。

© www.soinside.com 2019 - 2024. All rights reserved.