节点/快速应用程序无法使用mongoose连接到Mongodb Atlas

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了节点/快速应用程序无法使用mongoose连接到Mongodb Atlas相关的知识,希望对你有一定的参考价值。

我有一个节点/快递应用程序,我试图使用mongoose连接到Mongodb Atlas。

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

{ 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
  • 表达.16h
  • 猫鼬v5.5.1
答案

请添加autoIndex:false为我工作

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

以上是关于节点/快速应用程序无法使用mongoose连接到Mongodb Atlas的主要内容,如果未能解决你的问题,请参考以下文章

无法通过节点休息应用程序上的mongoose连接到mongodb-altas,连接失败:“UnhandledPromiseRejectionWarning:错误:连接EACCES”

使用新的节点快速服务器连接到现有 MongoDB

在节点 js 中使用 mongoose 连接到 MongoDB 后未显示数据

Mongoose 无法连接到 mLab 环境

Mongoose 无法连接到 mLab 环境

无法使用 Mongoose 连接到 MongoDB Atlas