Сегодня я начал разрабатывать свое первое веб-приложение. Я решил использовать Node JS и MySQL (а также Vue JS). Я пытаюсь создать скрипт для входа / регистрации. Реестр работает хорошо. Я проверил запрос в Почтальоне, и все выглядит хорошо. Проблема приходит при входе в систему. Запрос, который я посылаю почтальону, занимает слишком много времени, и я не знаю почему.
Это мой файл server.js:
var express = require('express')
var cors = require('cors')
var bodyParser = require('body-parser')
var app = express()
var port = process.env.PORT || 5000
app.use(bodyParser.json())
app.use(cors())
app.use(
bodyParser.urlencoded({
extended: false
})
)
var Users = require('./routes/Users')
app.use('/users', Users)
app.listen(port, () => {
console.log('Server is running on port: ' + port)
})
И маршрут входа:
users.post('/login', (req, res) => {
User.findOne({
where: {
email: req.body.email
}
})
.then(user => {
if (user) {
if (bcrypt.compareSync(req.body.password, user.password)) {
let token = jwt.sign(user.dataValues, process.env.SECRET_KEY, {
expiresIn: 1440
})
res.send(token)
}
} else {
res.status(400).json({ error: 'User does not exist' })
}
})
.catch(err => {
res.status(400).json({ error: err })
})
})
Я хочу, чтобы запрос отправил правильный ответ. Выполненный mysql выглядит нормально:
Executing (default): SELECT `id`, `first_name`, `last_name`, `email`, `password`, `created` FROM `users` AS `user` WHERE `user`.`email` = 'test@test.com' LIMIT 1;
Но я не знаю, почему так долго. А также через 1-2 минуты я получаю это:
Could not get any response
There was an error connecting to http://localhost:5000/users/login.