NodeJS Пн goose можно подключиться из одного каталога linux, но не из другого - PullRequest
0 голосов
/ 18 апреля 2020

Несколько месяцев go, я настроил производственное приложение NodeJS, которое использует mongoose для подключения к базе данных MongoDB со следующей строкой подключения:

mongodb://@127.0.0.1:27017/invoice_app?retryWrites=true&w=majority

Мне не нужно было введите имя пользователя или пароль, и все заработало.

Я хотел сделать копию проекта NodeJS на том же сервере и указать его в той же базе данных. Я назову это staging NodeJS проектом. Однако каждый раз, когда я пытаюсь npm start мой staging проект, я получаю ошибку (node:11495) UnhandledPromiseRejectionWarning: MongoParseError: No username provided in authority section.

Насколько я могу судить, этот staging проект точно такой же, как и рабочий. Строка за строкой они должны быть одинаковыми, за исключением того, что они находятся в разных каталогах. Я использовал точно такую ​​же строку подключения. Проект NodeJS используется владельцем / исполнителем того же пользователя.

Почему mon goose может подключаться из одного каталога, но не из другого? Есть ли что-то еще, что я совершенно не понял?

1 Ответ

0 голосов
/ 18 апреля 2020

Проблема заключалась в том, что я удалил каталог node_modules из моего промежуточного проекта. И когда я запустил npm install в промежуточном каталоге, он на самом деле не дал мне правильные версии node_modules пакетов в качестве рабочей версии. Вот соответствующие строки из package-lock.json, которые решили мои проблемы при постановке:

"mongodb": {
  "version": "3.3.5",
  "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.3.5.tgz",
  "integrity": "sha1-ONUxATr+3pKw3SguO588CMm9/zs=",
  "requires": {
    "bson": "^1.1.1",
    "require_optional": "^1.0.1",
    "safe-buffer": "^5.1.2",
    "saslprep": "^1.0.0"
  }
},
"mongoose": {
  "version": "5.7.13",
  "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.7.13.tgz",
  "integrity": "sha1-2Ou8Fc+xnQFM8fvUt69BPXWVLUY=",
  "requires": {
    "bson": "~1.1.1",
    "kareem": "2.3.1",
    "mongodb": "3.3.5",
    "mongoose-legacy-pluralize": "1.0.2",
    "mpath": "0.6.0",
    "mquery": "3.2.2",
    "ms": "2.1.2",
    "regexp-clone": "1.0.0",
    "safe-buffer": "5.1.2",
    "sift": "7.0.1",
    "sliced": "1.0.1"
  },
  "dependencies": {
    "ms": {
      "version": "2.1.2",
      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
      "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk="
    }
  }
},
"mongoose-legacy-pluralize": {
  "version": "1.0.2",
  "resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz",
  "integrity": "sha1-O6n5H6UHtRhtOZ+0CFS/8Y+1Y+Q="
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...