Невозможно получить доступ к MongoDB Atlas из API, размещенного на Cpanel - PullRequest
0 голосов
/ 21 марта 2020

Мне нужно создать прототип простого Node.js REST API, размещенного на сервере Cpanel, который подключается к кластеру MongoDB Atlas по следующему соединению:

const mongoose = require('mongoose')
mongoose.connect('mongodb+srv://auser:apassword@cluster0-6bnnw.gcp.mongodb.net/test', {
    useNewUrlParser: true,
    useCreateIndex: true,
    useFindAndModify: false
})

API Node.js работает очень хорошо, так как Я могу выполнить базовые c запросы к нему, но все, что связано с БД, заканчивается зависанием и возвратом ошибки:

'Неполный ответ, полученный от приложения'

Проверка журналов CPanel показывает мне следующие ошибки:

App 106656 output:     at TLSSocket.err (.../skylab/11/lib/node_modules/mongodb/lib/core/connection/connect.js:294:7)
App 106656 output:     at callback (.../skylab/11/lib/node_modules/mongodb/lib/core/connection/connect.js:264:5)
App 106656 output:     at makeConnection (.../skylab/11/lib/node_modules/mongodb/lib/core/connection/connect.js:31:7)
App 106656 output:     at connect (.../skylab/11/lib/node_modules/mongodb/lib/core/connection/pool.js:1008:9)

При тестировании:

  • Работает тестирование из локального приложения Node.js в локальный экземпляр mongoDB.
  • Работает тестирование из локального приложения Node.js в кластер mongoDB.

У меня есть соединения в белый список с кластером в атласе (присвоив ему 0.0.0.0).

Я также могу получить доступ к кластеру mongoDB с помощью указанной выше строки подключения из Studio 3T без проблем.

...