#javascript #node.js #mongodb #mongoose
Вопрос:
Я новичок в node js, поэтому всегда ловлю, как мне кажется, очевидные ошибки. Просто пытаюсь сделать так, чтобы новый пользователь использовал mongoose
, но поймал это:
Ошибка проверки пользователя: требуется псевдоним: Путь
nickname
., требуется пароль: Путьpassword
.
Это моя схема пользователя:
const { Schema, model } = require("mongoose")
const userSchema = new Schema({
nickname: {
type: String,
required: true,
},
password: {
type: String,
required: true,
},
date: {
type: Date,
default: Date.now,
},
})
module.exports = model("User", userSchema)
А это мой маршрутизатор:
const { Router } = require("express")
const express = require("express")
const router = Router()
const User = require("../modules/user")
router.use(express.urlencoded({ extended: true }))
router.post("/api/user/register", async (req, res) => {
const newUser = new User({
nickname: req.body.nickname,
password: req.body.password,
})
try {
const savedUser = await newUser.save()
res.send(savedUser)
} catch (err) {
console.log(err)
}
})
И когда я пытаюсь отправить запрос через почтальона, просто отправляю этот объект:
{
"nickname": "userExampleN",
"password": "userExampleP"
}
Я улавливаю ошибку.
Что в этом плохого?
Комментарии:
1. Я бы предположил, что ваша
req.body
строка не былаJSON.parse
обработана никаким промежуточным программным обеспечением2. @EwoutStortenbeker о Господи, теперь это действительно работает, спасибо!