Ошибка при регистрации пользователя в веб-приложении для создания заметок.Javascript

Форум по Javascript
Ответить
Гость
 Ошибка при регистрации пользователя в веб-приложении для создания заметок.

Сообщение Гость »


Когда я запускаю приложение в Chrome и пытаюсь зарегистрироваться, указав данные пользователя, в консоли отображается эта ошибка: произошла внутренняя ошибка сервера. Я предполагаю, что это функция контроллера регистров, но я не могу понять, что с ним не так.

Это мой маршрутизатор и функция регистрации:

router.post('/createuser', [ body('name', 'Введите допустимое имя').isLength({ min: 3 }), body('email', 'Введите действительный адрес электронной почты').isEmail(), body('пароль', 'Пароль должен содержать не менее 5 символов').isLength({ min: 5 }), ], async (req, res) => { пусть успех = ложь //если есть ошибки, возвращаем неверный запрос и ошибки константные ошибки = validationResult (req); если (!errors.isEmpty()) { return res.status(400).send({ успех, ошибки: error.array() }); } //проверяем, существует ли уже пользователь с таким адресом электронной почты пытаться { const user = await User.findOne({электронная почта: req.body.email}) если (пользователь) { return res.status(400).send({ успех, сообщение: «К сожалению, пользователь с таким адресом электронной почты уже существует» }) } const salt = ожидание bcrypt.genSalt(10) const secPass = ожидание bcrypt.hash(req.body.password, salt) req.body.password = secPass const newUser = новый пользователь (req.body) ожидайте newUser.save() res.status(201).send({ успех: правда, сообщение: «Зарегистрировано успешно» }) //перехватываем ошибки } поймать (ошибка) { console.error(ошибка.сообщение) res.status(500).send({ успех: false, сообщение: «Произошла внутренняя ошибка сервера» }) } })

Это код моей страницы регистрации:

const Регистрация = (реквизит) => { const [credentials, setCredentials] = useState({ name: "", адрес электронной почты: "", пароль: "", cpassword: "" }) пусть перемещается = useNavigate() const handleSubmit = async (e) => { е.preventDefault() const {имя, адрес электронной почты, пароль} = учетные данные const response = await fetch("http://localhost:5000/api/auth/createuser", { метод: 'POST', // *GET, POST, PUT, DELETE и т. д. заголовки: { «Тип контента»: «приложение/json», }, тело: JSON.stringify({имя, адрес электронной почты, пароль}) }); const json = ожидайте ответа.json() консоль.log(JSON) если (json.success) { props.showAlert("Учетная запись успешно создана", "успех") перейти("/логин") } еще { props.showAlert("Неверные учетные данные", "опасность") } } const onChange = (e) => { setCredentials({ ...credentials, [e.target.name]: e.target.value }) } возвращаться ( Зарегистрироваться Имя Адрес электронной почты Пароль Подтвердите пароль Отправить ) } экспортировать регистрацию по умолчанию Код Server.js:

const ConnectToMongo = require('./db') константный экспресс = требуется («экспресс») const cors = require('cors') подключитьToMongo() константное приложение = экспресс() константный порт = 5000 app.use(cors({ происхождение: ['http://localhost:3000'] })) app.use(express.json()) app.use('/api/auth', require("./routes/auth")) app.use('/api/notes', require("./routes/notes")) app.listen(port, () => { console.log(`Береговое приложение iNotebook прослушивает порт ${port}`) }) Модель Мангуста:

const mongoose = require('mongoose') const {Схема} = мангуст const UserSchema = новая схема({ имя: { тип: Строка, требуется: правда }, электронная почта: { тип: Строка, требуется: правда, уникальный: правда }, пароль: { тип: Строка, требуется: правда }, дата: { тип: Дата, по умолчанию: Дата.сейчас } }); const User = mongoose.model('user', UserSchema) модуль.exports = Пользователь Любая помощь будет оценена по достоинству. Спасибо!
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»