Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.11.2022, 12:29
Кандидат Javascript-наук
Отправить личное сообщение для CryNet Посмотреть профиль Найти все сообщения от CryNet
 
Регистрация: 02.01.2019
Сообщений: 148

Ошибка «URI malformed, cannot be parsed» на старом проекте. Как пофиксить?
Есть относительно старый проект. Обновил зависимости, подключил новую базу с теми же кредами, в итоге вижу ошибку:

MongoParseError: URI malformed, cannot be parsed
    at parseConnectionString (/run/media/crynet/data/web/www/Node/crynet.tech/server/node_modules/mongodb/lib/core/uri_parser.js:580:21)
    at QueryReqWrap.callback (/run/media/crynet/data/web/www/Node/crynet.tech/server/node_modules/mongodb/lib/core/uri_parser.js:127:7)
    at QueryReqWrap.onresolve [as oncomplete] (node:internal/dns/callback_resolver:49:10)


Коннект к базе:
import 'dotenv/config'
...
async function startApp() {
  try {
    await mongoose.connect(process.env.DB as string, {
      useFindAndModify: false,
      useNewUrlParser: true,
      useUnifiedTopology: true
    })
    app.listen(process.env.PORT, () => console.log('SERVER WORKS ON PORT ' + process.env.PORT))
  } catch (e) {
    console.log(e)
  }
}


Пробовал без dotenv. Ошибка та же.
Есть идеи как фиксить?
Ответить с цитированием
  #2 (permalink)  
Старый 23.11.2022, 16:19
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,573

Первым аргументом идет адрес БД, а вы туда её название передаете.
https://mongoosejs.com/docs/connections.html
Ответить с цитированием
  #3 (permalink)  
Старый 25.11.2022, 17:52
Кандидат Javascript-наук
Отправить личное сообщение для CryNet Посмотреть профиль Найти все сообщения от CryNet
 
Регистрация: 02.01.2019
Сообщений: 148

Сообщение от Nexus Посмотреть сообщение
Первым аргументом идет адрес БД, а вы туда её название передаете.
https://mongoosejs.com/docs/connections.html
Так я просто скопировал то, что мне выдал сам Mongo в интеграции
Ответить с цитированием
  #4 (permalink)  
Старый 25.11.2022, 17:54
Кандидат Javascript-наук
Отправить личное сообщение для CryNet Посмотреть профиль Найти все сообщения от CryNet
 
Регистрация: 02.01.2019
Сообщений: 148

Сообщение от Nexus Посмотреть сообщение
Первым аргументом идет адрес БД, а вы туда её название передаете.
https://mongoosejs.com/docs/connections.html
ENV выглядит так:

DB=mongodb+srv://admin:admin@cluster0.server.mongodb.net/blog?retryWrites=true&w=majority
PORT=5000
Ответить с цитированием
  #5 (permalink)  
Старый 25.11.2022, 18:00
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,573

CryNet, вы смотрели, что у вас в «process.env.DB»?
Попробуйте обернуть адрес вашей БД в .env в кавычки:
Код:
DB="mongodb+srv://admin:admin@cluster0.server.mongodb.net/blog?retryWrites=true&w=majority"
PORT=5000
Ответить с цитированием
  #6 (permalink)  
Старый 25.11.2022, 18:22
Кандидат Javascript-наук
Отправить личное сообщение для CryNet Посмотреть профиль Найти все сообщения от CryNet
 
Регистрация: 02.01.2019
Сообщений: 148

Сообщение от Nexus Посмотреть сообщение
CryNet, вы смотрели, что у вас в «process.env.DB»?
Попробуйте обернуть адрес вашей БД в .env в кавычки:
Код:
DB="mongodb+srv://admin:admin@cluster0.server.mongodb.net/blog?retryWrites=true&w=majority"
PORT=5000
Ничего не изменилось. Та я пробовал избавляться от ENV файла полностью, т.к. думал, что проблема в либе dotenv.
Ответить с цитированием
  #7 (permalink)  
Старый 27.11.2022, 16:54
Кандидат Javascript-наук
Отправить личное сообщение для CryNet Посмотреть профиль Найти все сообщения от CryNet
 
Регистрация: 02.01.2019
Сообщений: 148

Сообщение от Nexus Посмотреть сообщение
CryNet, вы смотрели, что у вас в «process.env.DB»?
Попробуйте обернуть адрес вашей БД в .env в кавычки:
Код:
DB="mongodb+srv://admin:admin@cluster0.server.mongodb.net/blog?retryWrites=true&w=majority"
PORT=5000
Пофиксил. Бага была в том, что обновился Монгус, а новая версия уже не поддерживает параметры, которые были у меня указанны.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему ошибка при статусе 200, или как сформировать ответ? [NodeJS&AJAX] blacklool AJAX и COMET 2 10.03.2015 21:36
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 12:29
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25