Nodejs创建用户端点,如何优化?

时间:2019-09-23 21:40:50

标签: javascript node.js mongodb mongoose endpoint

因此,我有一个NodeJS项目,其中有一个创建用户的端点。我正在使用Mongoose创建用户模型以将其保存到MongoDB数据库。这是我的代码:

const User = require("../models/user");
const { validationResult } = require("express-validator");

exports.createUser = async (req, res, next) => {
  const errors = validationResult(req);
  if (!errors.isEmpty()) {
    const error = new Error("Validación incorrecta");
    error.statusCode = 422;
    throw error;
  }
  const userName = req.body.userName;
  const password = req.body.password;
  const role = req.body.role;
  //creandolo en la base de datos
  const user = new User({
    userName: userName,
    password: password,
    role: role
  });
  try {
    await user.save(); //guardando en bd
    res.status(201).json({
      message: "Usuario creado con exito!",
      user: user
    });
  } catch (err) {
    if (!err.statusCode) {
      err.statusCode = 500;
    }
    next(err);
  }
};

我导入我的用户模型文件,并同时使用body-parser。我已经设置了一个带有发布请求的端点,并且我在Postman上测试了此代码,并且可以正常工作。 我是一个初学者,我刚刚在Udemy观看了NodeJS课程,并且正在遵循在那里看到的代码模式。我的问题是这样一个事实,我必须req.body解析每个字段(用户名,密码,角色),然后创建一个具有相同字段的新User,以便直接在数据库中创建它,并且出于可伸缩性的原因,我认为这将是一个问题,因为我计划将更多的模型添加到具有很多字段的数据库中。

0 个答案:

没有答案