Как исправить «Ошибка проверки пользователя: ник: Требуется путь `ник`., пароль: Требуется путь «пароль».» узел js, mongodb

#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 о Господи, теперь это действительно работает, спасибо!