@Meefril

Как правильно использовать mongodb в модулях node js?

У меня есть 3 файла для бота:
1)точка входа, которая лонгполлит команды пользователей
2)мидлварь, которая подключена к точке входа и принимает уже команды, валидирует их и отправляет на третий файл
3) тут уже сама команда, собственно, обрабатывается

Использую mongodb для хранения данных о пользователях. Она мне нужна во втором и третьем скрипте. Хотел бы узнать как правильно в таком случае поступить. Мне на ум только вот такое приходит:
1-ый вариант: создавать подключение к монге для каждого из этих двух файлов
2-ой: создать MongoClient подключение только к одному из файлов и дальше его уже передать вместе с классом, который я экспортирую
  • Вопрос задан
  • 40 просмотров
Решения вопроса 1
@Meefril Автор вопроса
Вообщем, накидал я вот такой класс и хотел бы узнать правильно ли я сделал... В точке входа инициализирую, а в модулях уже getDb() использую
const { MongoClient } = require('mongodb');

const url = 'mongodb://127.0.0.1:27017';
const client = new MongoClient(url);

const dbName = 'dbName';

let db;

class mongoUtil{
    static async init(){
        await client.connect();
        console.log('Connected successfully to server');
        db = client.db(dbName);
    }
    static getDb(){
        console.log('using same instance...')
        return db
    }
}

module.exports = {mongoUtil}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы