Задать вопрос
kupuelel
@kupuelel

Как решить проблему с авторизацией на node js и mongoDB?

Всем привет, помогите пожалуйста как решить проблему с регистрацией на ноде и mongoDB, сделал простейший код, а он не работает, подозреваю что проблема в строке с condidate. При наличии email в БД код должен выдовать ответ что пользователь уже есть, но при вводе нового email, которого нет в БД все равно повляется что пользователь найден, подскажите где ошибка

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

const User = require('../Posts/Posts.js');


router.post('/api/auth/login', async (req, res) => {

    try {
        const {email, password} = req.body;

        console.log(email, password);
        const candidate = User.findOne({email});

        if (candidate) {
            return res.status(400).json({message: 'User already exist'})
        }

        const user = new User({
            email, 
            password
        });
    
        await user.save()
        res.json('Success auth !')


    } catch(e) {
        res.status(500).json('Something wrong');
    }
});

const mongoose = require('mongoose');

const schema = mongoose.Schema;
const model = mongoose.model;

const UserSchema = new schema({
    email: {type: String, required: true},
    password: { type: String, required: true}
});

const User = model('user', UserSchema);
module.exports = User;


62d357b2390ef536422014.png
62d357d2b65c5325041514.png
  • Вопрос задан
  • 109 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
MvcBox
@MvcBox
Software Engineer [C/C++/JS(for Node.js)/etc]
const candidate = await User.findOne({email});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы