Решил защитить свою бд и подключить аутентификацию для удалённого доступа. Но не смог найти информацию об аутентификации через MongoClient, только если использовать mongoose, чего я не хочу. Ещё был вариант авторизация в url const url = 'mongodb://user:pass@localhost:27017/dbname';
но этот вариант не работает. MongoDB v.4.0.6
var db = null;
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/';
MongoClient.connect(url, {useNewUrlParser: true}, function(err, dbr) {
if (err) throw err;
db = dbr.db("my-db");
});
Нашёл решение проблемы. Так как я зарегистрировал пользователя через консоль, который управляет несколькими базами данных, то для подключения нужно указывать самую первую зарегистрированную базу данных, а потом уже подключаться к нужной базе данных. Очень долго ломал над этим голову, но интуиция не подвела :) Вот код:
var db = null;
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/';
MongoClient.connect(url, {
useNewUrlParser: true,
auth: {username: "admin", password: "pass"},
authSource:'first_db'
}, function(err, dbr) {
if (err) throw err;
db = dbr.db('necessary_db');
});
И вот ещё один вариант, который мне показался неудобным и устаревшим:
var db = null;
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://user:pass@localhost:27017/?authSource=first_db';
MongoClient.connect(url, {
useNewUrlParser: true,
}, function(err, dbr) {
if (err) throw err;
db = dbr.db('necessary_db');
});
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Хочу отправить форму в телеграм прямо из js файлаВо всем этом новичок
Подскажите, на сайте установлен fullpagejs для постраничного скролла
Есть ссылка на изображение, хочу получить его и загрузить в вк для отправкиТекущий код:
Не отправляются данные с формы, я так понял это из-за того что я в форме блоки сделал, можно как-то отправлять с вложенных блоков или нужно...