【问题标题】:Need help connecting and inserting data to mongodb需要帮助连接和插入数据到 mongodb
【发布时间】:2021-02-16 08:33:24
【问题描述】:

我需要一些关于 mongodb 的帮助。

我刚开始使用它,并创建了一个名为 db 的集群,其中包含一个名为 discord-bot 的数据库和一个名为 users 的集合

这应该为每个用户创建一个数据库条目,所以这是我的代码

const { MongoClient } = require("mongodb");

const uri = "mongodb+srv://<My username>:<My password>@<My db url>?retryWrites=true&w=majority";
const client = new MongoClient(uri);

async function run(query) {
    try {
        await client.connect();
        const database = client.db('discord-bot');
        const collection = database.collection('users');

        await collection.insertOne(query);
    } finally {
        await client.close();
    }
}

botClient.users.cache.forEach(u => {
    const q = { name: u.username }
    run(q).catch(console.dir);
})

我认为这段代码应该可以工作,但它给了我这个错误 TypeError:无法读取 null 的属性“maxWireVersion”

我在网上找不到有关该错误的任何信息,有人可以帮我弄清楚该错误是什么以及如何解决它。 (另外,我正在使用带有 discord.js 的 mongodb,以防这是必要的信息)

【问题讨论】:

  • 尝试在字符串上附加&amp;authSource=admin

标签: node.js mongodb discord.js


【解决方案1】:

我用它来连接 mongo DB

const MongoClient = require('mongodb').MongoClient;
var connection;
MongoClient.connect('your-db-uri', { useUnifiedTopology: true }, async function(err, client) {
    if(err)throw err
    console.log("Successfully Connected")
    connection = client
})

然后您可以将连接变量用作所有函数的全局变量

【讨论】:

    猜你喜欢
    • 2016-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 1970-01-01
    相关资源
    最近更新 更多