邮递员套接字挂断无法连接到Mongodb

时间:2020-08-30 22:05:38

标签: node.js reactjs mongodb react-native

我是编程新手。我已经连接了MongoDB Atlas,并且需要使用POSTMAN保存一个对象。

但是我收到此消息,套接字挂断了。我尝试了使用代理选项进行的所有操作。

请注意,我的新数据库中没有任何保存的内容。除了用户名和密码之外,我还是按原样保留dbname。它将在连接时自行创建一个名为“ dbname”的数据库。也不确定在这里做什么。

DB_CONNECT = mongodb + srv:// username:@ cluster0.uxjdg.mongodb.net /?retryWrites = true&w = majority

这是详细信息

Index.js

const express=require('express');
const app =express();
const mongoose=require('mongoose');
const dotenv=require('dotenv');
const bodyParser=require('body-parser');

dotenv.config();

//Connect to DB
mongoose.connect('process.env.DB_CONNECT',
//{ useUnifiedTopology: true },
{ useNewUrlParser: true },

()=>console.log('connect to db'));

//Middleware
app.use(express.json());

//Import Routes

const authRoute=require('./routes/auth');

//Route Middlewares

app.use('/api/user', authRoute);

app.listen(3000, ()=>console.log('Server up and Running'));

路由器

const router=require('express').Router();

const User=require('../model/User');

router.post('/register', async(req, res)=>{

    const user =new User({
        name:req.body.name,
        email:req.body.email,
        password:req.body.password
    });

    try{
     const savedUser=await user.save();
     res.send(savedUser);

    }catch(err){
        res.status(400).send(err);
    }
});



module.exports=router;

模式


const mongoose=require('mongoose');

const userSchema =new mongoose.Schema({
  name:{

    type:String,
    required:true,
    min:6,
  },
  email:{

    type:String,
    required:true,
    max:255,
    min:6
  },

  password:{

    type:String,
    required:true,
    max:1024,
    min:6
  },

  date:{

    type:Date,
    default:Date.now
  }

});

module.exports=mongoose.model('User', userSchema);

1 个答案:

答案 0 :(得分:0)

我和您遇到了同样的问题,所以我想我应该分享解决这个问题的步骤:

  • 返回您的MongoDB项目文件夹
  • 删除当前集群并创建一个新集群
  • 您显然必须重新配置数据库访问权限。
  • 我不确定是否有必要,但是我暂时将网络访问权限设置为“允许从任何地方进行所有访问”
  • 重新连接到群集,即更新DB_CONNECT URL,除非您使用相同的PW。
  • 也重新启动您的节点。

欢迎光临!我希望这有帮助。编码愉快!

相关问题