express和mongoose api后套接字挂起

chy5wohz  于 2022-11-13  发布在  Go
关注(0)|答案(1)|浏览(197)

我正在通过Postman向localhost:5000/api/auth/register发送一个post请求,但是套接字总是挂断。我错过了什么?提前感谢!(我使用的是mongoDB的免费集群)

{
    "username": "ChronoKross",
    "email": "email@gmail.com",
    "password": "123"
}

下面是我架构:

const mongoose = require("mongoose");

const UserSchema = new mongoose.Schema({
    username:{
        type: String,
        required: true,
        unique: true
    },
    email:{
        type: String,
        required: true,
        unique: true
    },
    password:{
        type: String,
        required: true
    },
    profilePicture:{
        type: String,
        default: "",
    }, 
},
    { timestamps: true }
);

module.exports = mongoose.model("User", UserSchema);

这是我路线:

const router = require("express").Router();
const User = require("../models/User");

//REGISTER
router.post("/register", async (req, res)=> {
    try{
        const newUser = new User({
            username: req.body.username,
            email: req.body.email,
            password: req.body.password,
        });

        const user = await newUser.save();
        res.status(200).json(user);

    } catch(err){
        res.status(500).json(err);
    }
})

//LOGIN

module.exports = router;

下面是我index.js:

const express = require('express');
const app = express();
const dotenv = require("dotenv");
const mongoose = require("mongoose");
const authRoute = require("./routes/auth");

dotenv.config();
app.use(express.json);

mongoose
    .connect(process.env.MONGO_URL)
    .then(console.log("Connected to MONGODB"))
    .catch(err=>console.log(err));

    app.use("/api/auth", authRoute);

app.listen("5000", () => {
    console.log("Backend is running.");
})

我在看一个在线指南,我找不到我做错的地方。我用的是NodeJs,ExpressJs,MongooseJs,和Postman。如果你需要任何额外的信息,请告诉我。--我正准备不好意思发表这个问题,哈哈...

7kjnsjlb

7kjnsjlb1#

express.json是一个函数,也尝试在DB成功连接后启动服务器:

app.use(express.json());

app.use("/api/auth", authRoute);

mongoose
    .connect(process.env.MONGO_URL)
    .then(() => {
      console.log("Connected to MONGODB")
      
      app.listen("5000", () => {
        console.log("Backend is running.");
      })
    })
    .catch(err=>console.log(err));

相关问题