【问题标题】:Node/express application failing to connect to Mongodb Atlas using mongooseNode/express 应用程序无法使用 mongoose 连接到 Mongodb Atlas
【发布时间】:2019-09-04 15:37:17
【问题描述】:

我有一个 node/express 应用程序,我正在尝试使用 mongoose 连接到 Mongodb Atlas。

我的所有代码都与我之前连接到 Atlas 的应用程序相同(运行良好)。当我在我的工作机器(Windows 10)上运行它时,一切都按预期工作。但是,当我在 MacBook Pro (Mojave) 上运行它时,express 应用程序会运行,但与 Atlas 的 mongoose 连接会引发以下错误:

{ Error: queryTxt EBADNAME development-zv5hp.mongodb.net
    at QueryReqWrap.onresolve [as oncomplete] (dns.js:196:19)
  errno: 'EBADNAME',
  code: 'EBADNAME',
  syscall: 'queryTxt',
  hostname: 'development-zv5hp.mongodb.net' }

server.js

const express = require('express');
const mongoose = require('mongoose');

const app = express();

mongoose
  .connect(
    'mongodb+srv://client:<PASSWORD>@development-zv5hp.mongodb.net/shop',
    { useNewUrlParser: true }
  )
  .then(() => console.log('MongoDB Connected...'))
  .catch(err => console.log(err));

const PORT = process.env.PORT || 5000;
app.listen(PORT, () => console.log(`Server running on port ${PORT}`));

什么可能导致此问题? 我检查了 Atlas 用户和密码,并将我的 IP 列入白名单(实际上将所有 IP 列入白名单)

使用:

  • 节点 v10.15.3
  • express v4.16.4
  • 猫鼬 v5.5.1

【问题讨论】:

    标签: node.js mongodb express mongoose mongodb-atlas


    【解决方案1】:

    此错误是因为无法解析传递给 connect 的 URI 'mongodb+srv://client:&lt;PASSWORD&gt;@development-zv5hp.mongodb.net/shop'。您的 DNS 服务器不知道它,因此无法解析 IP。因此是 ebadname。

    change this like Addison mentioned

    【讨论】:

      【解决方案2】:

      使用谷歌的DNS服务器8.8.8.88.8.4.4可以解决这个问题

      【讨论】:

      • 这行得通 - 谢谢。显然,我的家庭 ISP 阻止了它。有趣的是,如果我将手机连接到手机以使用移动数据(由同一 ISP 提供),它可以使用默认 DNS...
      【解决方案3】:

      请添加 autoIndex: false 它对我有用

      mongoose
        .connect(
          'mongodb+srv://client:<PASSWORD>@development-zv5hp.mongodb.net/shop',
          {autoIndex: false, useNewUrlParser: true }
      

      【讨论】:

      • 不幸的是,这没有任何区别。仍然抛出同样的错误。
      猜你喜欢
      • 2019-12-30
      • 2020-02-22
      • 2020-07-25
      • 1970-01-01
      • 1970-01-01
      • 2021-04-14
      • 2019-12-14
      • 2022-01-18
      • 2017-09-09
      相关资源
      最近更新 更多